From c0d2e76775c07276057796691e6f4f43bfb11c21 Mon Sep 17 00:00:00 2001 From: Matthias Maier Date: Wed, 1 Sep 2021 17:36:42 -0500 Subject: [PATCH] Boost 1.77 compatibility: change order of includes MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Otherwise, including both header files in reverse order leads to a compilation failure: ``` In file included from /usr/include/boost/geometry/index/detail/rtree/rstar/choose_next_node.hpp:25, from /usr/include/boost/geometry/index/detail/rtree/rstar/rstar.hpp:15, from /usr/include/boost/geometry/index/rtree.hpp:80, from ../include/deal.II/numerics/rtree.h:29, from ../include/deal.II/grid/grid_tools.h:49, from ../include/deal.II/numerics/vector_tools_point_gradient.templates.h:22, from ../source/numerics/vector_tools_point_gradient.cc:17: /usr/include/boost/geometry/index/detail/algorithms/intersection_content.hpp: In function ‘bool boost::geometry::index::detail::disjoint_box_box(const Box&, const Box&, const boost::geometry::default_strategy&)’: /usr/include/boost/geometry/index/detail/algorithms/intersection_content.hpp:35:32: error: ‘boost::geometry::strategy::disjoint’ has not been declared 35 | typedef typename strategy::disjoint::services::default_strategy::type strategy_type; | ^~~~~~~~ /usr/include/boost/geometry/index/detail/algorithms/intersection_content.hpp:35:68: error: expected unqualified-id before ‘<’ token 35 | typedef typename strategy::disjoint::services::default_strategy::type strategy_type; | ^ /usr/include/boost/geometry/index/detail/algorithms/intersection_content.hpp:36:83: error: class template argument deduction failed: 36 | return geometry::detail::disjoint::disjoint_box_box(box1, box2, strategy_type()); ``` --- include/deal.II/numerics/rtree.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/include/deal.II/numerics/rtree.h b/include/deal.II/numerics/rtree.h index 98d36fadbd..1bdc1a74fe 100644 --- a/include/deal.II/numerics/rtree.h +++ b/include/deal.II/numerics/rtree.h @@ -26,8 +26,13 @@ #include DEAL_II_DISABLE_EXTRA_DIAGNOSTICS -#include #include +/* + * For boost 1.77 compatibility we need to include strategies.hpp before we + * can include rtree.hpp. Otherwise a compilation error within boost + * headers is encountered. + */ +#include DEAL_II_ENABLE_EXTRA_DIAGNOSTICS #include -- 2.39.5