* installing *source* package ‘lidR’ ...
** package ‘lidR’ successfully unpacked and MD5 sums checked
** using staged installation
** libs
using C++ compiler: ‘g++-14 (GCC) 14.0.1 20240503 (prerelease)’
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/lidR/src'
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c C_Gatziolis2019.cpp -o C_Gatziolis2019.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c C_chm_prep.cpp -o C_chm_prep.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c C_dalponte2016.cpp -o C_dalponte2016.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c C_delaunay.cpp -o C_delaunay.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c LAS.cpp -o LAS.o
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/cstdfloat.hpp:27,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/detail/float128_functions.hpp:15,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/detail/fpclassify.hpp:13,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/detail/default_ops.hpp:15,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/detail/generic_interconvert.hpp:12,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/number.hpp:12,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/cpp_int.hpp:19,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/multiprecision/cpp_bin_float.hpp:15,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/core/coordinate_promotion.hpp:16,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/core/radian_access.hpp:30,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometry.hpp:50,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry.hpp:17,
                 from LAS.cpp:6:
/data/gannet/ripley/R/test-dev/BH/include/boost/math/cstdfloat/cstdfloat_cmath.hpp:714:16: warning: non-standard suffix on floating constant [-Wpedantic]
  714 |                else if (x == BOOST_FLOAT128_C(0.0))
      |                ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/math/cstdfloat/cstdfloat_cmath.hpp:717:16: warning: non-standard suffix on floating constant [-Wpedantic]
  717 |                if (::BOOST_CSTDFLOAT_FLOAT128_FABS(x) < BOOST_CSTDFLOAT_FLOAT128_MIN)
      |                ^~
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c Progress.cpp -o Progress.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c RcppExports.cpp -o RcppExports.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c RcppFunction.cpp -o RcppFunction.o
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/bind/mem_fn.hpp:25,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/mem_fn.hpp:22,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/function/detail/prologue.hpp:19,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/function.hpp:30,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/algorithm/string/detail/find_iterator.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/algorithm/string/find_iterator.hpp:24,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/algorithm/string/iter_find.hpp:27,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/algorithm/string/split.hpp:16,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/svg/svg_mapper.hpp:27,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometry.hpp:129:
/data/gannet/ripley/R/test-dev/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)
      |                                        ^~~~~~~~
In file included from /usr/local/gcc14/include/c++/14.0.1/memory:78,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/math/cstdfloat/cstdfloat_cmath.hpp:25:
/usr/local/gcc14/include/c++/14.0.1/bits/unique_ptr.h:59:28: note: declared here
   59 |   template<typename> class auto_ptr;
      |                            ^~~~~~~~
LAS.cpp: In member function 'void LAS::filter_local_maxima(Rcpp::NumericVector, double, bool)':
LAS.cpp:373:22: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
  373 |   for (int i = 0 ; i < npoints ; i++) { if (Z[i] < min_height) state[i] = NLM; }
      |                    ~~^~~~~~~~~
LAS.cpp:361:8: warning: unused variable 'UKN' [-Wunused-variable]
  361 |   char UKN = 0;
      |        ^~~
LAS.cpp:363:8: warning: unused variable 'LMX' [-Wunused-variable]
  363 |   char LMX = 2;
      |        ^~~
LAS.cpp: In member function 'void LAS::filter_local_maxima(Rcpp::NumericVector)':
LAS.cpp:449:10: warning: variable 'orientation' set but not used [-Wunused-but-set-variable]
  449 |   double orientation = 0;
      |          ^~~~~~~~~~~
LAS.cpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
LAS.cpp:612:10: warning: unused variable 'is_in_polygon' [-Wunused-variable]
  612 |     bool is_in_polygon = false;
      |          ^~~~~~~~~~~~~
LAS.cpp: In member function 'void LAS::filter_isolated_voxel(double, unsigned int)':
LAS.cpp:774:10: warning: unused variable 'zmax' [-Wunused-variable]
  774 |   double zmax = max(Z);
      |          ^~~~
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/concept/assert.hpp:35,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/concept/requires.hpp:8,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/arithmetic/arithmetic.hpp:24,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometry.hpp:54:
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:74:5:   required from 'class boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/arithmetic/arithmetic.hpp:46:5:   required from 'class boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:618:12:   required from here
  618 |       Bbox bbox;
      |            ^~~~
/data/gannet/ripley/R/test-dev/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 /data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:31,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:25,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/arithmetic/arithmetic.hpp:27:
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/arithmetic/arithmetic.hpp:46:5:   required from 'class boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:618:12:   required from here
  618 |       Bbox bbox;
      |            ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Point<Geometry>::~Point() [with Geometry = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:74:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   74 |     BOOST_CONCEPT_USAGE(Point)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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> >]':
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:114:7:   [ skipping 20 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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(); }
      |     ^
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/iterator/iterator_concepts.hpp:114:7:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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> >]':
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:152:13:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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(); }
      |     ^
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:152:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:278:9:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:278:9:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:278:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:281:9:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:281:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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> >]':
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:191:13:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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(); }
      |     ^
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:191:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:321:9:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:321:9:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:321:9:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:322:9:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:322:9:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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> >]':
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:218:14:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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(); }
      |     ^
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:218:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:355:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:355:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:355:9:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:356:9:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:356:9:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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> >]':
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:239:14:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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(); }
      |     ^
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:239:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:373:9:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:373:9:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:373:9:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/linestring_concept.hpp:45:5:   [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:374:9:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:374:9:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/linestring_concept.hpp:45:5:   [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/linestring_concept.hpp:45:5:   required from 'class boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/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 /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/geometry_collection_concept.hpp:17,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/dynamic_geometry_concept.hpp:24,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:29,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/assign_indexed_point.hpp:28,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/policies/relate/intersection_points.hpp:21,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/policies/relate/intersection_policy.hpp:21,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/intersection_strategies.hpp:19,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/strategies.hpp:37,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometry.hpp:57:
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12: note: in a call to non-static member function 'boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >::~RandomAccessRangeConcept()'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:48:5:   required from 'class boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:60:5:   required from 'class boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Ring<Geometry>::~Ring() [with Geometry = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:48:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   48 |     BOOST_CONCEPT_USAGE(Ring)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:83:5:   required from 'class boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Polygon<PolygonType>::~Polygon() [with PolygonType = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:83:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   83 |     BOOST_CONCEPT_USAGE(Polygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:74:5:   required from 'class boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Point<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/arithmetic/arithmetic.hpp:46:5:   required from 'class boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:618:12:   required from here
  618 |       Bbox bbox;
      |            ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Point<Geometry>::~Point() [with Geometry = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:74:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   74 |     BOOST_CONCEPT_USAGE(Point)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/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(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 21 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  136 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/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(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 20 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  136 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 16 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  284 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  137 |     BOOST_CONCEPT_USAGE(DefaultConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/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(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 15 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  137 |     BOOST_CONCEPT_USAGE(DefaultConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/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(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 18 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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>]':
/data/gannet/ripley/R/test-dev/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(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 17 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:208:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  208 |     BOOST_CONCEPT_USAGE(Convertible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*, std::vector<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, std::allocator<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:48:5:   required from 'class boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Ring<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Ring<Geometry>::~Ring() [with Geometry = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:48:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   48 |     BOOST_CONCEPT_USAGE(Ring)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:83:5:   required from 'class boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/multi_polygon.hpp:57:5:   required from 'class boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:619:20:   required from here
  619 |       MultiPolygon polygons;
      |                    ^~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Polygon<PolygonType>::~Polygon() [with PolygonType = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:83:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   83 |     BOOST_CONCEPT_USAGE(Polygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:278:9:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:278:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 5 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:281:9:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:281:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 5 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 5 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:321:9:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:321:9:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:322:9:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:322:9:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:355:9:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:355:9:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:356:9:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:356:9:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:373:9:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:373:9:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/linestring_concept.hpp:45:5:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:374:9:   [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:374:9:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/linestring_concept.hpp:45:5:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/linestring_concept.hpp:45:5:   required from 'class boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12: note: in a call to non-static member function 'boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::~RandomAccessRangeConcept()'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:46:5:   required from 'class boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::MultiPolygon<Geometry>::~MultiPolygon() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:46:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   46 |     BOOST_CONCEPT_USAGE(MultiPolygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::CopyConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  136 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::EqualityComparable<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5:   required from 'struct boost::CopyConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:125:16:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  125 |         struct IncrementableIteratorConcept : CopyConstructible<Iterator>
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:167:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  167 |     BOOST_CONCEPT_USAGE(CopyConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13:   required from 'struct boost::range_detail::IncrementableIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:136:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  136 |             BOOST_CONCEPT_USAGE(IncrementableIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5:   required from 'struct boost::EqualityComparable<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:147:16:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  147 |         struct SinglePassIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 12 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:233:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  233 |     BOOST_CONCEPT_USAGE(EqualityComparable) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13:   required from 'struct boost::range_detail::SinglePassIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:158:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  158 |             BOOST_CONCEPT_USAGE(SinglePassIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::SinglePassRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9:   required from 'struct boost::SinglePassRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:318:12:   required from 'struct boost::ForwardRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  318 |     struct ForwardRangeConcept : SinglePassRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:352:12:   required from 'struct boost::BidirectionalRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  352 |     struct BidirectionalRangeConcept : ForwardRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:370:12:   required from 'struct boost::RandomAccessRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
  370 |     struct RandomAccessRangeConcept : BidirectionalRangeConcept<T>
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:32:62:   [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  284 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::DefaultConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  137 |     BOOST_CONCEPT_USAGE(DefaultConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5:   required from 'struct boost::DefaultConstructible<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:181:16:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
  181 |         struct ForwardIteratorConcept
      |                ^~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept_check.hpp:137:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  137 |     BOOST_CONCEPT_USAGE(DefaultConstructible) {
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13:   required from 'struct boost::range_detail::ForwardIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 10 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:197:13: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  197 |             BOOST_CONCEPT_USAGE(ForwardIteratorConcept)
      |             ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14:   required from 'struct boost::range_detail::BidirectionalIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:224:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  224 |              BOOST_CONCEPT_USAGE(BidirectionalIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]':
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14:   required from 'struct boost::range_detail::RandomAccessIteratorConcept<__gnu_cxx::__normal_iterator<const boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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 boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >*, std::vector<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, std::allocator<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:245:14: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  245 |              BOOST_CONCEPT_USAGE(RandomAccessIteratorConcept)
      |              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:46:5:   required from 'class boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::MultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1202:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1202 |     geometry::concepts::check<Geometry>();
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::MultiPolygon<Geometry>::~MultiPolygon() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:46:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   46 |     BOOST_CONCEPT_USAGE(MultiPolygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5:   required from 'class boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:108:5:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:108:5:   required from 'class boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:69:5:   [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstPoint<Geometry>::~ConstPoint() [with Geometry = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  128 |     BOOST_CONCEPT_USAGE(ConstPoint)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:78:5:   required from 'class boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:109:5:   [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:109:5:   required from 'class boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:69:5:   [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstRing<Geometry>::~ConstRing() [with Geometry = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:78:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   78 |     BOOST_CONCEPT_USAGE(ConstRing)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:128:5:   required from 'class boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:69:5:   [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:69:5:   required from 'class boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstPolygon<PolygonType>::~ConstPolygon() [with PolygonType = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:128:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  128 |     BOOST_CONCEPT_USAGE(ConstPolygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:75:5:   required from 'class boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstMultiPolygon<Geometry>::~ConstMultiPolygon() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:75:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   75 |     BOOST_CONCEPT_USAGE(ConstMultiPolygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/box_concept.hpp:63:5:   required from 'class boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:112:29:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  112 |         concepts::check<Box>();
      |         ~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:112:29:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  112 |         concepts::check<Box>();
      |         ~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Box<Geometry>::~Box() [with Geometry = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/box_concept.hpp:63:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   63 |     BOOST_CONCEPT_USAGE(Box)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::SinglePassRangeConcept<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/size.hpp:62:9:   required from 'typename boost::range_size<const SinglePassRange>::type boost::size(const SinglePassRange&) [with SinglePassRange = geometry::model::multi_polygon<geometry::model::polygon<geometry::model::point<double, 2, geometry::cs::cartesian> > >; typename range_size<const SinglePassRange>::type = long unsigned int]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:646:75:   required from 'static void boost::geometry::detail::wkt::multi_parser<MultiGeometry, Parser, PrefixPolicy>::apply(TokenizerIterator&, const TokenizerIterator&, const std::string&, MultiGeometry&) [with TokenizerIterator = boost::token_iterator<boost::char_separator<char>, __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >, std::__cxx11::basic_string<char> >; MultiGeometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Parser = boost::geometry::detail::wkt::polygon_parser; PrefixPolicy = boost::geometry::detail::wkt::prefix_multipolygon; std::string = std::__cxx11::basic_string<char>]'
  646 |                 traits::resize<MultiGeometry>::apply(geometry, boost::size(geometry) + 1);
      |                                                                ~~~~~~~~~~~^~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:628:14:   required from 'static void boost::geometry::detail::wkt::multi_parser<MultiGeometry, Parser, PrefixPolicy>::apply(const std::string&, MultiGeometry&) [with MultiGeometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Parser = boost::geometry::detail::wkt::polygon_parser; PrefixPolicy = boost::geometry::detail::wkt::prefix_multipolygon; std::string = std::__cxx11::basic_string<char>]'
  628 |         apply(it, end, wkt, geometry);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/io/wkt/read.hpp:1203:40:   required from 'void boost::geometry::read_wkt(const std::string&, Geometry&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; std::string = std::__cxx11::basic_string<char>]'
 1203 |     dispatch::read_wkt<Geometry>::apply(wkt, geometry);
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
LAS.cpp:621:32:   required from here
  621 |       boost::geometry::read_wkt(wkt, polygons);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  284 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5:   required from 'class boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstPoint<Geometry>::~ConstPoint() [with Geometry = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  128 |     BOOST_CONCEPT_USAGE(ConstPoint)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:78:5:   required from 'class boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstRing<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstRing<Geometry>::~ConstRing() [with Geometry = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/ring_concept.hpp:78:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   78 |     BOOST_CONCEPT_USAGE(ConstRing)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:128:5:   required from 'class boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPolygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstPolygon<PolygonType>::~ConstPolygon() [with PolygonType = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/polygon_concept.hpp:128:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  128 |     BOOST_CONCEPT_USAGE(ConstPolygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:75:5:   required from 'class boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstMultiPolygon<boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = const boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:111:40:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  111 |         concepts::check<Geometry const>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstMultiPolygon<Geometry>::~ConstMultiPolygon() [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/multi_polygon_concept.hpp:75:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   75 |     BOOST_CONCEPT_USAGE(ConstMultiPolygon)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/box_concept.hpp:63:5:   required from 'class boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::Box<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/check.hpp:55:5:   required from 'constexpr void boost::geometry::concepts::check() [with Geometry = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:112:29:   required from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]'
  112 |         concepts::check<Box>();
      |         ~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47:   required from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]'
  179 |     resolve_dynamic::envelope<Geometry>::apply(geometry, mbr, default_strategy());
      |     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:622:32:   required from here
  622 |       boost::geometry::envelope(polygons, bbox);
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::Box<Geometry>::~Box() [with Geometry = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/box_concept.hpp:63:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
   63 |     BOOST_CONCEPT_USAGE(Box)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5:   required from 'class boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::multi_polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:637:40:   required from here
  637 |         if (boost::geometry::covered_by(p, polygons))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:340:5:   required from 'struct boost::geometry::concepts::within::dispatch::check_within<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::point_tag, boost::geometry::multi_polygon_tag, boost::geometry::areal_tag, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::multi_polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:637:40:   required from here
  637 |         if (boost::geometry::covered_by(p, polygons))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::WithinStrategyPolygonal<Point, Polygonal, Strategy>::~WithinStrategyPolygonal() [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Polygonal = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  168 |     BOOST_CONCEPT_USAGE(WithinStrategyPolygonal)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5:   required from 'class boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::polygon<model::point<double, 2, cs::cartesian> >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:668:40:   required from here
  668 |         if (boost::geometry::covered_by(p, polygon))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:340:5:   required from 'struct boost::geometry::concepts::within::dispatch::check_within<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::point_tag, boost::geometry::polygon_tag, boost::geometry::areal_tag, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::polygon<model::point<double, 2, cs::cartesian> >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:668:40:   required from here
  668 |         if (boost::geometry::covered_by(p, polygon))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::WithinStrategyPolygonal<Point, Polygonal, Strategy>::~WithinStrategyPolygonal() [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Polygonal = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  168 |     BOOST_CONCEPT_USAGE(WithinStrategyPolygonal)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5:   required from 'class boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::multi_polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:637:40:   required from here
  637 |         if (boost::geometry::covered_by(p, polygons))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::WithinStrategyPolygonal<Point, Polygonal, Strategy>::~WithinStrategyPolygonal() [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Polygonal = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  168 |     BOOST_CONCEPT_USAGE(WithinStrategyPolygonal)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5:   required from 'class boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >, boost::geometry::strategies::relate::cartesian<> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::polygon<model::point<double, 2, cs::cartesian> >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:668:40:   required from here
  668 |         if (boost::geometry::covered_by(p, polygon))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::WithinStrategyPolygonal<Point, Polygonal, Strategy>::~WithinStrategyPolygonal() [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Polygonal = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:168:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  168 |     BOOST_CONCEPT_USAGE(WithinStrategyPolygonal)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5:   required from 'class boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   required from 'struct boost::concepts::requirement_<void (*)(boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >)>'
   72 | struct requirement_<void(*)(Model)>
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:122:13:   [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::multi_polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:637:40:   required from here
  637 |         if (boost::geometry::covered_by(p, polygons))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |     ^
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:122:13:   required from 'static void boost::geometry::concepts::WithinStrategyPolygonal<Point, Polygonal, Strategy>::checker::apply(ApplyMethod, ResultMethod) [with ApplyMethod = bool (*)(const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>&, const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>&, const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>&, boost::geometry::strategy::within::detail::cartesian_winding_base<boost::geometry::strategy::side::side_by_triangle<void>, void>::counter&); ResultMethod = int (*)(const boost::geometry::strategy::within::detail::cartesian_winding_base<boost::geometry::strategy::side::side_by_triangle<void>, void>::counter&); Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Polygonal = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:170:23:   required from 'boost::geometry::concepts::WithinStrategyPolygonal<Point, Polygonal, Strategy>::~WithinStrategyPolygonal() [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Polygonal = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  170 |         checker::apply(&strategy_type::template apply<Point, point_of_segment>,
      |         ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  171 |                        &strategy_type::result);
      |                        ~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47:   required from 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::geometry::concepts::WithinStrategyPolygonal<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::strategies::relate::cartesian<> >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:340:5:   required from 'struct boost::geometry::concepts::within::dispatch::check_within<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >, boost::geometry::point_tag, boost::geometry::multi_polygon_tag, boost::geometry::areal_tag, boost::geometry::strategies::relate::cartesian<> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::multi_polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:637:40:   required from here
  637 |         if (boost::geometry::covered_by(p, polygons))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstPoint<Geometry>::~ConstPoint() [with Geometry = const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  128 |     BOOST_CONCEPT_USAGE(ConstPoint)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp: In instantiation of 'boost::concepts::usage_requirements<Model>::~usage_requirements() [with Model = boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]':
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5:   required from 'class boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/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::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
   32 |   inline yes has_constraints_(Model*, wrap_constraints<Model,&Model::constraints>* = 0);
      |                                                              ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:42:5:   required from 'const bool boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::value'
   44 |       , value = sizeof( detail::has_constraints_((Model*)0) ) == sizeof(detail::yes) );
      |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/has_constraints.hpp:45:51:   required from 'struct boost::concepts::not_satisfied<boost::geometry::concepts::ConstPoint<const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >'
   45 |     typedef boost::integral_constant<bool, value> type;
      |                                                   ^~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:72:8:   [ skipping 5 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/concepts/within_concept.hpp:376:11:   required from 'void boost::geometry::concepts::within::check() [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  376 |         > c;
      |           ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:66:64:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   66 |         concepts::within::check<Geometry1, Geometry2, Strategy>();
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::multi_polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:637:40:   required from here
  637 |         if (boost::geometry::covered_by(p, polygons))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:20:48: warning: 'this' pointer is null [-Wnonnull]
   20 |     ~usage_requirements() { ((Model*)0)->~Model(); }
      |                             ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::geometry::concepts::ConstPoint<Geometry>::~ConstPoint() [with Geometry = const boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/geometries/concepts/point_concept.hpp:128:5: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  128 |     BOOST_CONCEPT_USAGE(ConstPoint)
      |     ^~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp: In instantiation of 'static void boost::concepts::requirement<boost::concepts::failed************ Model::************>::failed() [with Model = boost::SinglePassRangeConcept<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> >]':
/data/gannet/ripley/R/test-dev/BH/include/boost/range/size.hpp:62:9:   required from 'typename boost::range_size<const SinglePassRange>::type boost::size(const SinglePassRange&) [with SinglePassRange = geometry::model::ring<geometry::model::point<double, 2, geometry::cs::cartesian>, true, true, std::vector, std::allocator>; typename range_size<const SinglePassRange>::type = long unsigned int]'
   92 |     &::boost::concepts::requirement_<ModelFnPtr>::failed>    \
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/within/point_in_geometry.hpp:174:25:   required from 'static int boost::geometry::detail_dispatch::within::point_in_geometry<Ring, boost::geometry::ring_tag>::apply(const Point&, const Ring&, const Strategy&) [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Strategy = boost::geometry::strategies::relate::cartesian<>; Ring = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
  174 |         if ( boost::size(ring) < core_detail::closure::minimum_ring_size
      |              ~~~~~~~~~~~^~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/within/point_in_geometry.hpp:199:21:   required from 'static int boost::geometry::detail_dispatch::within::point_in_geometry<Polygon, boost::geometry::polygon_tag>::apply(const Point&, const Polygon&, const Strategy&) [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Strategy = boost::geometry::strategies::relate::cartesian<>; Polygon = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
  196 |         int const code = point_in_geometry
      |                          ~~~~~~~~~~~~~~~~~
  197 |             <
      |             ~        
  198 |                 typename ring_type<Polygon>::type
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  199 |             >::apply(point, exterior_ring(polygon), strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/within/point_in_geometry.hpp:353:71:   required from 'int boost::geometry::detail::within::point_in_geometry(const Point&, const Geometry&, const Strategy&) [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  353 |     return detail_dispatch::within::point_in_geometry<Geometry>::apply(point, geometry, strategy);
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/within/point_in_geometry.hpp:365:29:   required from 'bool boost::geometry::detail::within::covered_by_point_geometry(const Point&, const Geometry&, const Strategy&) [with Point = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
  365 |     return point_in_geometry(point, geometry, strategy) >= 0;
      |            ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/implementation.hpp:44:57:   required from 'static bool boost::geometry::detail::covered_by::use_point_in_geometry::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>]'
   44 |         return detail::within::covered_by_point_geometry(geometry1, geometry2, strategy);
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:74:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<Strategy, IsUmbrella>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::relate::cartesian<>; bool IsUmbrella = true]'
   71 |         return dispatch::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~
   72 |             <
      |             ~        
   73 |                 Geometry1, Geometry2
      |                 ~~~~~~~~~~~~~~~~~~~~
   74 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:113:21:   required from 'static bool boost::geometry::resolve_strategy::covered_by<boost::geometry::default_strategy, false>::apply(const Geometry1&, const Geometry2&, boost::geometry::default_strategy) [with Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]'
  110 |         return covered_by
      |                ~~~~~~~~~~
  111 |             <
      |             ~        
  112 |                 strategy_type
      |                 ~~~~~~~~~~~~~
  113 |             >::apply(geometry1, geometry2, strategy_type());
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:138:21:   required from 'static bool boost::geometry::resolve_dynamic::covered_by<Geometry1, Geometry2, Tag1, Tag2>::apply(const Geometry1&, const Geometry2&, const Strategy&) [with Strategy = boost::geometry::default_strategy; Geometry1 = boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>; Geometry2 = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Tag1 = boost::geometry::point_tag; Tag2 = boost::geometry::polygon_tag]'
  135 |         return resolve_strategy::covered_by
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  136 |             <
      |             ~        
  137 |                 Strategy
      |                 ~~~~~~~~
  138 |             >::apply(geometry1, geometry2, strategy);
      |             ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/covered_by/interface.hpp:230:17:   required from 'bool boost::geometry::covered_by(const Geometry1&, const Geometry2&) [with Geometry1 = model::point<double, 2, cs::cartesian>; Geometry2 = model::polygon<model::point<double, 2, cs::cartesian> >]'
  227 |     return resolve_dynamic::covered_by
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~
  228 |         <
      |         ~        
  229 |             Geometry1, Geometry2
      |             ~~~~~~~~~~~~~~~~~~~~
  230 |         >::apply(geometry1, geometry2, default_strategy());
      |         ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LAS.cpp:668:40:   required from here
  668 |         if (boost::geometry::covered_by(p, polygon))
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/detail/general.hpp:50:47: warning: 'this' pointer is null [-Wnonnull]
   50 |     static void failed() { ((Model*)0)->~Model(); }
      |                            ~~~~~~~~~~~~~~~~~~~^~
/data/gannet/ripley/R/test-dev/BH/include/boost/concept/usage.hpp:37:7: note: in a call to non-static member function 'boost::SinglePassRangeConcept<T>::~SinglePassRangeConcept() [with T = boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>]'
   37 |       ~model()
      |       ^
/data/gannet/ripley/R/test-dev/BH/include/boost/range/concepts.hpp:284:9: note: in expansion of macro 'BOOST_CONCEPT_USAGE'
  284 |         BOOST_CONCEPT_USAGE(SinglePassRangeConcept)
      |         ^~~~~~~~~~~~~~~~~~~
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c UnitTests.cpp -o UnitTests.o
In file included from ../inst/include/lidR/GridPartition.h:6,
                 from ../inst/include/SpatialIndex.h:5,
                 from LAS.cpp:4:
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:660:54:
../inst/include/lidR/Shapes.h:42:14: warning: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' may be used uninitialized [-Wmaybe-uninitialized]
   42 |   this->xmin = xmin;
      |   ~~~~~~~~~~~^~~~~~
LAS.cpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
LAS.cpp:649:12: note: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' was declared here
  649 |       Bbox bbox;
      |            ^~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:660:54:
../inst/include/lidR/Shapes.h:44:14: warning: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' may be used uninitialized [-Wmaybe-uninitialized]
   44 |   this->ymin = ymin;
      |   ~~~~~~~~~~~^~~~~~
LAS.cpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
LAS.cpp:649:12: note: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' was declared here
  649 |       Bbox bbox;
      |            ^~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:660:54:
../inst/include/lidR/Shapes.h:43:14: warning: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' may be used uninitialized [-Wmaybe-uninitialized]
   43 |   this->xmax = xmax;
      |   ~~~~~~~~~~~^~~~~~
LAS.cpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
LAS.cpp:649:12: note: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' was declared here
  649 |       Bbox bbox;
      |            ^~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:660:54:
../inst/include/lidR/Shapes.h:45:14: warning: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' may be used uninitialized [-Wmaybe-uninitialized]
   45 |   this->ymax = ymax;
      |   ~~~~~~~~~~~^~~~~~
LAS.cpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
LAS.cpp:649:12: note: 'bbox.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' was declared here
  649 |       Bbox bbox;
      |            ^~~~
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/envelope/cartesian.hpp:18,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/implementation.hpp:40,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/envelope.hpp:23,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/spherical/distance_segment_box.hpp:17,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategies/strategies.hpp:78:
In static member function 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]',
    inlined from 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:49:17,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = std::vector<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>, std::allocator<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_hole]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:87:25,
    inlined from 'static void boost::geometry::detail::envelope::envelope_polygon::apply(const Polygon&, Box&, const Strategy&) [with Polygon = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::envelope::cartesian<>]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/areal.hpp:69:46,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:83:38,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:68:26,
    inlined from 'static void boost::geometry::resolve_strategy::envelope<boost::geometry::default_strategy, false>::apply(const Geometry&, Box&, boost::geometry::default_strategy) [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:94:44,
    inlined from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:114:52,
    inlined from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:622:32:
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:53:13: warning: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' may be used uninitialized [-Wmaybe-uninitialized]
   53 |             box = st.m_box;
      |             ^~~
In file included from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/areal.hpp:20,
                 from /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/implementation.hpp:29:
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:82:21: note: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' was declared here
   82 |                 Box helper_mbr;
      |                     ^~~~~~~~~~
In static member function 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]',
    inlined from 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:49:17,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = std::vector<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>, std::allocator<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_hole]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:87:25,
    inlined from 'static void boost::geometry::detail::envelope::envelope_polygon::apply(const Polygon&, Box&, const Strategy&) [with Polygon = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::envelope::cartesian<>]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/areal.hpp:69:46,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:83:38,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:68:26,
    inlined from 'static void boost::geometry::resolve_strategy::envelope<boost::geometry::default_strategy, false>::apply(const Geometry&, Box&, boost::geometry::default_strategy) [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:94:44,
    inlined from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:114:52,
    inlined from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:622:32:
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:53:13: warning: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' may be used uninitialized [-Wmaybe-uninitialized]
   53 |             box = st.m_box;
      |             ^~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:82:21: note: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' was declared here
   82 |                 Box helper_mbr;
      |                     ^~~~~~~~~~
In static member function 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]',
    inlined from 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:49:17,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = std::vector<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>, std::allocator<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_hole]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:87:25,
    inlined from 'static void boost::geometry::detail::envelope::envelope_polygon::apply(const Polygon&, Box&, const Strategy&) [with Polygon = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::envelope::cartesian<>]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/areal.hpp:69:46,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:83:38,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:68:26,
    inlined from 'static void boost::geometry::resolve_strategy::envelope<boost::geometry::default_strategy, false>::apply(const Geometry&, Box&, boost::geometry::default_strategy) [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:94:44,
    inlined from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:114:52,
    inlined from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:622:32:
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:53:13: warning: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' may be used uninitialized [-Wmaybe-uninitialized]
   53 |             box = st.m_box;
      |             ^~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:82:21: note: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' was declared here
   82 |                 Box helper_mbr;
      |                     ^~~~~~~~~~
In static member function 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]',
    inlined from 'static void boost::geometry::strategy::envelope::cartesian_boxes::result(const state<Box>&, Box&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:49:17,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = std::vector<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator>, std::allocator<boost::geometry::model::ring<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>, true, true, std::vector, std::allocator> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_hole]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:87:25,
    inlined from 'static void boost::geometry::detail::envelope::envelope_polygon::apply(const Polygon&, Box&, const Strategy&) [with Polygon = boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::strategies::envelope::cartesian<>]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/areal.hpp:69:46,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with Strategy = boost::geometry::strategy::envelope::cartesian_boxes; MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:83:38,
    inlined from 'static void boost::geometry::detail::envelope::envelope_multi_range<EnvelopePolicy>::apply(const MultiRange&, Box&, const Strategies&) [with MultiRange = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategies = boost::geometry::strategies::envelope::cartesian<>; EnvelopePolicy = boost::geometry::detail::envelope::envelope_polygon]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:68:26,
    inlined from 'static void boost::geometry::resolve_strategy::envelope<boost::geometry::default_strategy, false>::apply(const Geometry&, Box&, boost::geometry::default_strategy) [with Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:94:44,
    inlined from 'static void boost::geometry::resolve_dynamic::envelope<Geometry, Tag>::apply(const Geometry&, Box&, const Strategy&) [with Box = boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >; Strategy = boost::geometry::default_strategy; Geometry = boost::geometry::model::multi_polygon<boost::geometry::model::polygon<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >; Tag = boost::geometry::multi_polygon_tag]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:114:52,
    inlined from 'void boost::geometry::envelope(const Geometry&, Box&) [with Geometry = model::multi_polygon<model::polygon<model::point<double, 2, cs::cartesian> > >; Box = model::box<model::point<double, 2, cs::cartesian> >]' at /data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/interface.hpp:179:47,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:622:32:
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/strategy/cartesian/envelope_boxes.hpp:53:13: warning: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' may be used uninitialized [-Wmaybe-uninitialized]
   53 |             box = st.m_box;
      |             ^~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:82:21: note: 'helper_mbr.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner.boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' was declared here
   82 |                 Box helper_mbr;
      |                     ^~~~~~~~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:629:54:
../inst/include/lidR/Shapes.h:42:14: warning: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' may be used uninitialized [-Wmaybe-uninitialized]
   42 |   this->xmin = xmin;
      |   ~~~~~~~~~~~^~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:76:48: note: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' was declared here
   76 |         typename Strategy::template state<Box> state;
      |                                                ^~~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:629:54:
../inst/include/lidR/Shapes.h:44:14: warning: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' may be used uninitialized [-Wmaybe-uninitialized]
   44 |   this->ymin = ymin;
      |   ~~~~~~~~~~~^~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:76:48: note: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_min_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' was declared here
   76 |         typename Strategy::template state<Box> state;
      |                                                ^~~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:629:54:
../inst/include/lidR/Shapes.h:43:14: warning: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' may be used uninitialized [-Wmaybe-uninitialized]
   43 |   this->xmax = xmax;
      |   ~~~~~~~~~~~^~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:76:48: note: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[0]' was declared here
   76 |         typename Strategy::template state<Box> state;
      |                                                ^~~~~
In constructor 'lidR::Shape::Shape(double, double, double, double)',
    inlined from 'lidR::Rectangle::Rectangle(double, double, double, double)' at ../inst/include/lidR/Shapes.h:77:111,
    inlined from 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)' at LAS.cpp:629:54:
../inst/include/lidR/Shapes.h:45:14: warning: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' may be used uninitialized [-Wmaybe-uninitialized]
   45 |   this->ymax = ymax;
      |   ~~~~~~~~~~~^~~~~~
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp: In member function 'SEXPREC* LAS::find_polygon_ids(Rcpp::CharacterVector, bool)':
/data/gannet/ripley/R/test-dev/BH/include/boost/geometry/algorithms/detail/envelope/range.hpp:76:48: note: '*(boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>*)((char*)&state + offsetof(boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >,boost::geometry::strategy::envelope::cartesian_boxes::state<boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> > >::m_box.boost::geometry::model::box<boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian> >::m_max_corner)).boost::geometry::model::point<double, 2, boost::geometry::cs::cartesian>::m_values[1]' was declared here
   76 |         typename Strategy::template state<Box> state;
      |                                                ^~~~~
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c altrep.cpp -o altrep.o
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c convaveman.cpp -o convaveman.o
In file included from convaveman.cpp:2:
concaveman/concaveman.h:208:48: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor]
  208 |     template<class... Args> CircularElement<T>(Args&&... args): m_data(std::forward<Args>(args)...)
      |                                                ^~~~
concaveman/concaveman.h:208:48: note: remove the '< >'
g++-14 -std=gnu++17 -I"/data/gannet/ripley/R/R-devel/include" -DNDEBUG  -I'/data/gannet/ripley/R/test-dev/BH/include' -I'/data/gannet/ripley/R/test-dev/Rcpp/include' -I'/data/gannet/ripley/R/test-dev/RcppArmadillo/include' -I/usr/local/include   -fopenmp -I../inst/include/ -DRCPP_NO_MODULES -fpic  -g -O2 -Wall -pedantic -mtune=native -Wno-ignored-attributes -Wno-parentheses -Wp,-D_FORTIFY_SOURCE=3 -fexceptions -fstack-protector-strong -fstack-clash-protection -fcf-protection   -c openmputils.cpp -o openmputils.o
g++-14 -std=gnu++17 -shared -L/usr/local/gcc14/lib64 -L/usr/local/lib64 -o lidR.so C_Gatziolis2019.o C_chm_prep.o C_dalponte2016.o C_delaunay.o LAS.o Progress.o RcppExports.o RcppFunction.o UnitTests.o altrep.o convaveman.o openmputils.o -llapack -L/data/gannet/ripley/R/R-devel/lib -lRblas -lgfortran -lm -lquadmath -fopenmp
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/lidR/src'
make[1]: Entering directory '/data/gannet/ripley/R/packages/tests-devel/lidR/src'
make[1]: Leaving directory '/data/gannet/ripley/R/packages/tests-devel/lidR/src'
installing to /data/gannet/ripley/R/packages/tests-devel/lidR.Rcheck/00LOCK-lidR/00new/lidR/libs
** R
** 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
** checking absolute paths in shared objects and dynamic libraries
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (lidR)