Giter Site home page Giter Site logo

graph_parallel's People

Contributors

aminiussi avatar asutton avatar belcourt avatar beman avatar brycelelbach avatar danieljames avatar douggregor avatar eldiener avatar glenfe avatar jeremy-murphy avatar jewillco avatar jwakely avatar jzmaddock avatar lastique avatar marcelraad avatar marcinz avatar mwopitz avatar ngedmond avatar pavelkryukov avatar pdimov avatar straszheim avatar swatanabe avatar vprus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

graph_parallel's Issues

is_forward_iterator compile error

Tried to run the provided example code for dijkstra shortest path. It does not compile on 1.72.0 with OS X. @27576714 lead me to think the following might fix it:

dijkstra_shortest_paths(g, start,
                          distance_map(boost::make_iterator_property_map(
                          d.begin(), get(boost::vertex_index, g))));

But that is not the case. Below is the error message:

In file included from /usr/local/include/boost/graph/distributed/mpi_process_group.hpp:22:
In file included from /usr/local/include/boost/optional.hpp:15:
In file included from /usr/local/include/boost/optional/optional.hpp:31:
In file included from /usr/local/include/boost/core/swap.hpp:27:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/algorithm:2495:5: error: static_assert failed due to requirement
      '__is_forward_iterator<boost::detail::readable_pmap_iter<boost::iterators::transform_iterator<boost::detail::parallel::edge_descriptor<boost::detail::edge_desc_impl<boost::directed_tag,
      unsigned long> >::out_generator<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>,
      boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>,
      boost::no_property, boost::listS> >, boost::detail::out_edge_iter<std::__1::__wrap_iter<boost::detail::stored_edge_property<unsigned long,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > > > *>, unsigned long, boost::detail::edge_desc_impl<boost::directed_tag, unsigned long>, long>, boost::use_default, boost::use_default>,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> > > >::value'
      "std::min_element requires a ForwardIterator"
    static_assert(__is_forward_iterator<_ForwardIterator>::value,
    ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/__config:908:29: note: expanded from macro 'static_assert'
# define static_assert(...) _Static_assert(__VA_ARGS__)
                            ^              ~~~~~~~~~~~
/usr/local/include/boost/graph/distributed/crauser_et_al_shortest_paths.hpp:518:19: note: in instantiation of function template specialization
      'std::__1::min_element<boost::detail::readable_pmap_iter<boost::iterators::transform_iterator<boost::detail::parallel::edge_descriptor<boost::detail::edge_desc_impl<boost::directed_tag,
      unsigned long> >::out_generator<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>,
      boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>,
      boost::no_property, boost::listS> >, boost::detail::out_edge_iter<std::__1::__wrap_iter<boost::detail::stored_edge_property<unsigned long,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > > > *>, unsigned long, boost::detail::edge_desc_impl<boost::directed_tag, unsigned long>, long>, boost::use_default, boost::use_default>,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> > >,
      std::__1::less<float> >' requested here
            *std::min_element
                  ^
/usr/local/include/boost/graph/distributed/crauser_et_al_shortest_paths.hpp:558:11: note: in instantiation of function template specialization
      'boost::graph::distributed::detail::initialize_min_out_weights<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group,
      boost::vecS, boost::defaultS>, boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float,
      boost::no_property>, boost::no_property, boost::listS>, boost::iterator_property_map<float *, boost::local_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float,
      boost::no_property>, unsigned long> >, float, float &>, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      std::__1::less<float> >' requested here
  detail::initialize_min_out_weights(g, min_out_weight, weight, compare);
          ^
/usr/local/include/boost/graph/distributed/dijkstra_shortest_paths.hpp:68:9: note: in instantiation of function template specialization
      'boost::graph::distributed::crauser_et_al_shortest_paths<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group,
      boost::vecS, boost::defaultS>, boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float,
      boost::no_property>, boost::no_property, boost::listS>, boost::dijkstra_visitor<boost::null_visitor>, boost::dummy_property_map,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short,
      boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>, boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS> *,
      float, float &, boost::vertex_distance_t> >, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >,
      boost::iterator_property_map<std::__1::__wrap_iter<boost::default_color_type *>, boost::local_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float,
      boost::no_property>, unsigned long> >, boost::default_color_type, boost::default_color_type &>, std::__1::less<float>, std::__1::plus<float>, float, float>' requested
      here
        crauser_et_al_shortest_paths(g, s, predecessor, distance, weight,
        ^
/usr/local/include/boost/graph/distributed/dijkstra_shortest_paths.hpp:119:13: note: in instantiation of function template specialization
      'boost::graph::detail::parallel_dijkstra_impl2<boost::param_not_found>::run<boost::adjacency_list<boost::vecS,
      boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>, boost::undirectedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>, boost::no_property, boost::listS>,
      boost::dijkstra_visitor<boost::null_visitor>, boost::dummy_property_map, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >,
      boost::iterator_property_map<std::__1::__wrap_iter<boost::default_color_type *>, boost::local_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float,
      boost::no_property>, unsigned long> >, boost::default_color_type, boost::default_color_type &>, std::__1::less<float>, std::__1::plus<float>, float, float>' requested
      here
          ::run(g, s, predecessor, distance, lookahead, weight, index_map,
            ^
/usr/local/include/boost/graph/distributed/dijkstra_shortest_paths.hpp:144:9: note: in instantiation of function template specialization
      'boost::graph::detail::parallel_dijkstra_impl<boost::param_not_found>::run_impl<boost::adjacency_list<boost::vecS,
      boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>, boost::undirectedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>, boost::no_property, boost::listS>,
      boost::dijkstra_visitor<boost::null_visitor>, boost::dummy_property_map, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >, boost::param_not_found,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >,
      boost::iterator_property_map<std::__1::__wrap_iter<boost::default_color_type *>, boost::local_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float,
      boost::no_property>, unsigned long> >, boost::default_color_type, boost::default_color_type &>, std::__1::less<float>, std::__1::plus<float>, float, float>' requested
      here
        run_impl(g, s, predecessor, distance, lookahead, weight, index_map,
        ^
/usr/local/include/boost/graph/distributed/dijkstra_shortest_paths.hpp:196:9: note: in instantiation of function template specialization
      'boost::graph::detail::parallel_dijkstra_impl<boost::param_not_found>::run<boost::adjacency_list<boost::vecS,
      boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>, boost::undirectedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>, boost::no_property, boost::listS>,
      boost::dijkstra_visitor<boost::null_visitor>, boost::dummy_property_map, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >, boost::param_not_found,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >, std::__1::less<float>,
      std::__1::plus<float>, float, float>' requested here
      ::run(g, s, predecessor, distance, 
        ^
/usr/local/include/boost/graph/dijkstra_shortest_paths.hpp:536:7: note: in instantiation of function template specialization
      'boost::dijkstra_shortest_paths<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>,
      boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>,
      boost::no_property, boost::listS>, boost::dijkstra_visitor<boost::null_visitor>, boost::dummy_property_map,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short,
      boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>, boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS> *,
      float, float &, boost::vertex_distance_t> >, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >, std::__1::less<float>,
      std::__1::plus<float>, float, float, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >, boost::vertex_distance_t, boost::no_property>' requested
      here
      dijkstra_shortest_paths
      ^
/usr/local/include/boost/graph/dijkstra_shortest_paths.hpp:567:15: note: in instantiation of function template specialization
      'boost::detail::dijkstra_dispatch2<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>,
      boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>,
      boost::no_property, boost::listS>, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >,
      boost::bgl_named_params<boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >, boost::vertex_distance_t, boost::no_property> >' requested
      here
      detail::dijkstra_dispatch2
              ^
/usr/local/include/boost/graph/dijkstra_shortest_paths.hpp:585:13: note: in instantiation of function template specialization
      'boost::detail::dijkstra_dispatch1<boost::adjacency_list<boost::vecS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>,
      boost::undirectedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>,
      boost::no_property, boost::listS>, boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::edge_global_property_map<boost::detail::edge_desc_impl<boost::directed_tag, unsigned long> >,
      boost::adj_list_edge_property_map<boost::directed_tag, float, const float &, unsigned long, const boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::edge_weight_t> >,
      boost::local_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_id_map<boost::property<boost::vertex_distance_t, float, boost::no_property>, unsigned long> >,
      boost::bgl_named_params<boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group,
      boost::detail::parallel::global_descriptor_property_map<unsigned long>, boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>,
      boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>,
      boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float,
      boost::no_property> > >, boost::no_property, boost::listS> *, float, float &, boost::vertex_distance_t> >, boost::vertex_distance_t, boost::no_property> >' requested
      here
    detail::dijkstra_dispatch1
            ^
boost_mst.cxx:75:3: note: in instantiation of function template specialization 'boost::dijkstra_shortest_paths<boost::adjacency_list<boost::vecS,
      boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS, boost::defaultS>, boost::undirectedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_weight_t, float, boost::no_property>, boost::no_property, boost::listS>,
      boost::parallel::distributed_property_map<boost::graph::distributed::mpi_process_group, boost::detail::parallel::global_descriptor_property_map<unsigned long>,
      boost::vec_adj_list_vertex_property_map<boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, boost::property<boost::vertex_distance_t, float,
      boost::no_property>, boost::property<boost::edge_locally_owned_t, bool, boost::property<boost::edge_target_processor_id_t, short,
      boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS>, boost::adjacency_list<boost::vecS, boost::vecS,
      boost::directedS, boost::property<boost::vertex_distance_t, float, boost::no_property>, boost::property<boost::edge_locally_owned_t, bool,
      boost::property<boost::edge_target_processor_id_t, short, boost::property<boost::edge_weight_t, float, boost::no_property> > >, boost::no_property, boost::listS> *,
      float, float &, boost::vertex_distance_t> >, boost::vertex_distance_t, boost::no_property>' requested here
  dijkstra_shortest_paths(g, start,

Unhandled MPI_Requests generated by mpi_process_group constructor.

The boost::graph::distributed::mpi_process_group class spawns some non-blocking communication in its constructor, but the resulting requests are never handled. I have tracked this down to the global_trigger_launcher, which has the following comment:

 // TBD: do not forget to cancel any outstanding Irecv when deleted,
 // if we decide to use Irecv

It looks like this was never done, but the default build configuration uses Irecv. To replicate this bug, simply create an mpi_process_group with any constructor, do nothing with it, and let it go out of scope. You will need some way to interact with the MPI profiling interface to detect leaked requests, such as LLNL's mpileaks:

https://github.com/LLNL/mpileaks

Modular Boost C++ Libraries Request

We are in the process of making B2 build changes to all of the B2 build files
to support "modular" consumption of the Boost Libraries by users. See this list
post for some details: https://lists.boost.org/Archives/boost/2024/01/255704.php

The process requires making a variety of changes to make each Boost library
independent of the super-project structure. But the changes do not remove the
super-project structure or the comprehensive Boost release. The changes make
solely make it possible, optionally, for users, like package manages, to easily
consume libraries individually.

Generally the changes include:

  • Adding a libroot/build.jam.
  • Porting any functionality from libroot/jamfile to libroot/build.jam.
  • Moving boost-install declaration from libroot/build/jamfile is applicable.
  • Adjusting other B2 build files in the library, like test/jamfile, as needed.
  • Possible changes to C++ source files to remove includes relative to the
    super-project boostroot location.

Some examples of such changes:

We are asking how you would like us to handle the changes. We would prefer if
you allow the owners of the Boost.org GitHub project to make changes to B2
build files, as needed, to accomplish the changes. But understand
that you may want to manage the proposed changes yourself.

We previously sent emails to all known maintainers to fill out a form with their
preference. We are contacting you in this issue as we have not gotten a response
to that email. You can see the ongoing responses for that form and the responses
to these issues here https://github.com/users/grafikrobot/projects/1/views/6

We are now asking if you can reply directly to this issue to indicate your
preference of handling the changes. Please supply a response to this question
and close the issue (so that we can verify you are a maintainer).

How would you like the build changes to be processed?

  1. Pull request, reviewed and merged by a BOOSTORG OWNER.
  2. Pull request, reviewed and merged by YOU.
  3. Other. (please specify details in the reply)

Also please indicate any special instructions you want us to consider. Or other
information you want us to be aware of.

Thanks you, René

uneven_block distribution does not handle empty processes correctly

When creating an instance of uneven_block with the distribution [1, 0, 1] then the implementation incorrectly returns process id 1 (counting from 0) to be the owner of element id 1 (counting from zero), because the local starts of processes 1 and 2 are identical (local starts would be [0, 1, 1, 2] in this case).

In general, the implementation incorrectly assigns elements belonging to the first owner after one or more adjacent empty owners to the first of those empty ones.

I would suggest to change the implementation from

size_vector::const_iterator lb = std::lower_bound(local_starts.begin(), local_starts.end(), (std::size_t) i);
return ((SizeType)(*lb) == i ? lb : --lb) - local_starts.begin();

to

size_vector::const_iterator ub = std::upper_bound(local_starts.begin(), local_starts.end(), (std::size_t) i);
return (--ub) - local_starts.begin();

Edit: Corrected mistake as pointed out below.

One test fails after runtest graph_parallel submodule on x86 paltform.

Environment:
VS 2019 + Windows Server 2016

Issue description:
One test fails after runtest graph_parallel submodule on x86 paltform. Could you please take a look?

Reproduce steps:
git clone ​https://github.com/boostorg/boost.git F:\gitP\boostorg\boost
git -C "F:\gitP\boostorg\boost" submodule update --init --recursive
.\b2 headers variant=release --build-dir=..\out\x86rel address-model=32
.\b2 -j16 variant=release --build-dir=..\out\x86rel libs\graph_parallel\test
test_38.log

ErrorMessage:
compile-c-c++ ..\out\x86rel\boost\bin.v2\libs\graph_parallel\example\msvc-14.2\release\threading-multi\breadth_first_search.obj
breadth_first_search.cpp
.\boost/mpi/config.hpp(22): fatal error C1083: Cannot open include file: 'mpi.h': No such file or directory (d:\a01_work\4\s\src\vctools\Compiler\CxxFE\sl\p1\c\p0prepro.c:1964)

...failed compile-c-c++ ..\out\x86rel\boost\bin.v2\libs\graph_parallel\example\msvc-14.2\release\threading-multi\breadth_first_search.obj...

compile-c-c++ ..\out\x86rel\boost\bin.v2\libs\graph_parallel\example\msvc-14.2\release\threading-multi\dijkstra_shortest_paths.obj
dijkstra_shortest_paths.cpp
.\boost/mpi/config.hpp(22): fatal error C1083: Cannot open include file: 'mpi.h': No such file or directory (d:\a01_work\4\s\src\vctools\Compiler\CxxFE\sl\p1\c\p0prepro.c:1964)

...failed compile-c-c++ ..\out\x86rel\boost\bin.v2\libs\graph_parallel\example\msvc-14.2\release\threading-multi\dijkstra_shortest_paths.obj...

Library requirements errors.

====== BEGIN OUTPUT ======
libs/graph_parallel: warning: file not found; Did not find [project-root]/include/boost/[library].h* file. A single header for the library is suggested at [project-root]/include/boost/[library].h* if the library does not have a header directory at [project-root]/include/boost/[library].
libs/graph_parallel: error: directory not found; Missing [project-root]/meta directory. The [project-root]/meta directory is required for all libraries.

EXIT STATUS: 1
====== END OUTPUT ======

Most headers out of boost/pending

Headers were likely never supposed to live in boost/pending for a long time. At this point boost/pending should be retired and the headers moved into their rightful and normal place. Here are the pending headers for this repository:

graph_parallel/include/boost/pending/property_serialize.hpp

Cannot compile example dijkstra_shortest_paths.cpp

Hi. I am trying to compile the example file dijkstra_shortest_paths.cpp, but it seems to fail. Is this a bug in the library, or is the example outdated? Or am I missing anything else?

I enter the directory libs/graph_parallel/example, then:

$ cat user-config.jam 
using mpi ;
$ b2 --user-config=user-config.jam
warning: mismatched versions of Boost.Build engine and core
warning: Boost.Build engine (b2) is 4.0.0
warning: Boost.Build core (at /home2/giovanni2/packages/boost/upstream2/tools/build/src) is 4.1-git
warning: No toolsets are configured.
warning: Configuring default toolset "gcc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
Performing configuration checks

    - default address-model    : 64-bit (cached)
    - default architecture     : x86 (cached)
    - symlinks supported       : yes (cached)
warning: non-free usage requirements <threading>multi ignored
warning: in main-target mpi at /home2/giovanni2/packages/boost/upstream2/libs/graph_parallel/example/user-config.jam:1
warning: non-free usage requirements <threading>multi ignored
warning: in main-target boost_mpi at ../../../libs/mpi/build/Jamfile.v2:120
...patience...
...patience...
...patience...
...found 8840 targets...
...updating 2 targets...
gcc.compile.c++ ../../../bin.v2/libs/graph_parallel/example/gcc-9/debug/threading-multi/visibility-hidden/dijkstra_shortest_paths.o
In file included from ../../../boost/graph/distributed/dijkstra_shortest_paths.hpp:20,
                 from ../../../boost/graph/dijkstra_shortest_paths.hpp:595,
                 from dijkstra_shortest_paths.cpp:19:
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:189:13: error: ‘relaxed_heap’ does not name a type
  189 |     typedef relaxed_heap<vertex_descriptor, dist_queue_compare_type,
      |             ^~~~~~~~~~~~
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:203:13: error: ‘relaxed_heap’ does not name a type
  203 |     typedef relaxed_heap<vertex_descriptor, out_queue_compare_type,
      |             ^~~~~~~~~~~~
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:217:13: error: ‘relaxed_heap’ does not name a type
  217 |     typedef relaxed_heap<vertex_descriptor, in_queue_compare_type,
      |             ^~~~~~~~~~~~
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:224:22: error: ‘dist_queue_type’ has not been declared
  224 |     typedef typename dist_queue_type::size_type  size_type;
      |                      ^~~~~~~~~~~~~~~
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:225:22: error: ‘dist_queue_type’ has not been declared
  225 |     typedef typename dist_queue_type::value_type value_type;
      |                      ^~~~~~~~~~~~~~~
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:403:5: error: ‘dist_queue_type’ does not name a type; did you mean ‘distance_type’?
  403 |     dist_queue_type           dist_queue;
      |     ^~~~~~~~~~~~~~~
      |     distance_type
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:404:5: error: ‘out_queue_type’ does not name a type
  404 |     out_queue_type            out_queue;
      |     ^~~~~~~~~~~~~~
../../../boost/graph/distributed/crauser_et_al_shortest_paths.hpp:405:5: error: ‘in_queue_type’ does not name a type
  405 |     in_queue_type             in_queue;
      |     ^~~~~~~~~~~~~
[many other error messages]

It seems that relaxed_heap was deprecated. Maybe graph_parallel should stop making use of them? Thanks for your help.

Large number of warnings about deprecated features

Specifically:

gcc.compile.c++ ../../../bin.v2/libs/graph_parallel/test/adjlist_build_test-2.test/gcc-10/debug/cxxstd-17-iso/threading-multi/visibility-hidden/adjlist_build_test.o
In file included from ../../../boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                 from ../../../boost/smart_ptr/detail/yield_k.hpp:23,
                 from ../../../boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                 from ../../../boost/smart_ptr/detail/spinlock.hpp:42,
                 from ../../../boost/smart_ptr/detail/spinlock_pool.hpp:25,
                 from ../../../boost/smart_ptr/shared_ptr.hpp:29,
                 from ../../../boost/shared_ptr.hpp:17,
                 from ../../../boost/property_map/parallel/distributed_property_map.hpp:22,
                 from ../../../boost/property_map/parallel/parallel_property_maps.hpp:30,
                 from ../../../boost/property_map/property_map.hpp:602,
                 from ../../../boost/graph/adjacency_list.hpp:27,
                 from ../../../boost/graph/distributed/adjacency_list.hpp:18,
                 from adjlist_build_test.cpp:10:
../../../boost/config/pragma_message.hpp:24:34: note: ‘#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.’
   24 | # define BOOST_PRAGMA_MESSAGE(x) _Pragma(BOOST_STRINGIZE(message(x)))
      |                                  ^~~~~~~
../../../boost/bind.hpp:36:1: note: in expansion of macro ‘BOOST_PRAGMA_MESSAGE’
   36 | BOOST_PRAGMA_MESSAGE(
      | ^~~~~~~~~~~~~~~~~~~~
In file included from ../../../boost/graph/distributed/adjacency_list.hpp:53,
                 from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/named_graph.hpp: In destructor ‘boost::graph::distributed::named_graph<Graph, Vertex, Edge, Config>::lazy_add_vertex::~lazy_add_vertex()’:
../../../boost/graph/distributed/named_graph.hpp:379:25: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
  379 |   if (committed || std::uncaught_exception())
      |                         ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/graph/distributed/adjacency_list.hpp:53,
                 from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/named_graph.hpp:379:44: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
  379 |   if (committed || std::uncaught_exception())
      |                                            ^
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/graph/distributed/adjacency_list.hpp:53,
                 from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/named_graph.hpp: In destructor ‘boost::graph::distributed::named_graph<Graph, Vertex, Edge, Config>::lazy_add_edge::~lazy_add_edge()’:
../../../boost/graph/distributed/named_graph.hpp:489:25: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
  489 |   if (committed || std::uncaught_exception())
      |                         ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/graph/distributed/adjacency_list.hpp:53,
                 from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/named_graph.hpp:489:44: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
  489 |   if (committed || std::uncaught_exception())
      |                                            ^
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/graph/distributed/adjacency_list.hpp:53,
                 from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/named_graph.hpp: In destructor ‘boost::graph::distributed::named_graph<Graph, Vertex, Edge, Config>::lazy_add_edge_with_property::~lazy_add_edge_with_property()’:
../../../boost/graph/distributed/named_graph.hpp:685:25: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
  685 |   if (committed || std::uncaught_exception())
      |                         ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/graph/distributed/adjacency_list.hpp:53,
                 from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/named_graph.hpp:685:44: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
  685 |   if (committed || std::uncaught_exception())
      |                                            ^
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp: In destructor ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::lazy_add_vertex_with_property::~lazy_add_vertex_with_property()’:
../../../boost/graph/distributed/adjacency_list.hpp:2289:27: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2289 |     if (committed || std::uncaught_exception())
      |                           ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2289:46: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2289 |     if (committed || std::uncaught_exception())
      |                                              ^
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp: In destructor ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::lazy_add_edge::~lazy_add_edge()’:
../../../boost/graph/distributed/adjacency_list.hpp:2402:27: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2402 |     if (committed || std::uncaught_exception())
      |                           ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2402:46: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2402 |     if (committed || std::uncaught_exception())
      |                                              ^
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp: In destructor ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::lazy_add_edge_with_property::~lazy_add_edge_with_property()’:
../../../boost/graph/distributed/adjacency_list.hpp:2587:33: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2587 |     if (this->committed || std::uncaught_exception())
      |                                 ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2587:52: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2587 |     if (this->committed || std::uncaught_exception())
      |                                                    ^
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from ../../../boost/smart_ptr/detail/sp_thread_sleep.hpp:22,
                 from ../../../boost/smart_ptr/detail/yield_k.hpp:23,
                 from ../../../boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14,
                 from ../../../boost/smart_ptr/detail/spinlock.hpp:42,
                 from ../../../boost/smart_ptr/detail/spinlock_pool.hpp:25,
                 from ../../../boost/smart_ptr/shared_ptr.hpp:29,
                 from ../../../boost/shared_ptr.hpp:17,
                 from ../../../boost/property_map/parallel/distributed_property_map.hpp:22,
                 from ../../../boost/property_map/parallel/parallel_property_maps.hpp:30,
                 from ../../../boost/property_map/property_map.hpp:602,
                 from ../../../boost/graph/adjacency_list.hpp:27,
                 from ../../../boost/graph/distributed/adjacency_list.hpp:18,
                 from adjlist_build_test.cpp:10:
../../../boost/test/minimal.hpp: At global scope:
../../../boost/config/pragma_message.hpp:24:34: note: ‘#pragma message: This header is deprecated. Use <boost/test/included/unit_test.hpp> instead.’
   24 | # define BOOST_PRAGMA_MESSAGE(x) _Pragma(BOOST_STRINGIZE(message(x)))
      |                                  ^~~~~~~
../../../boost/config/header_deprecated.hpp:23:37: note: in expansion of macro ‘BOOST_PRAGMA_MESSAGE’
   23 | # define BOOST_HEADER_DEPRECATED(a) BOOST_PRAGMA_MESSAGE("This header is deprecated. Use " a " instead.")
      |                                     ^~~~~~~~~~~~~~~~~~~~
../../../boost/test/minimal.hpp:35:1: note: in expansion of macro ‘BOOST_HEADER_DEPRECATED’
   35 | BOOST_HEADER_DEPRECATED( "<boost/test/included/unit_test.hpp>" )
      | ^~~~~~~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp: In instantiation of ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::lazy_add_edge::~lazy_add_edge() [with OutEdgeListS = boost::listS; ProcessGroup = boost::graph::distributed::mpi_process_group; InVertexListS = boost::vecS; InDistribution = boost::defaultS; DirectedS = boost::bidirectionalS; VertexProperty = boost::no_property; EdgeProperty = boost::no_property; GraphProperty = boost::no_property; EdgeListS = boost::listS]’:
adjlist_build_test.cpp:90:75:   required from here
../../../boost/graph/distributed/adjacency_list.hpp:2402:45: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2402 |     if (committed || std::uncaught_exception())
      |                      ~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2402:45: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2402 |     if (committed || std::uncaught_exception())
      |                      ~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2402:45: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2402 |     if (committed || std::uncaught_exception())
      |                      ~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp: In instantiation of ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::lazy_add_edge_with_property::~lazy_add_edge_with_property() [with OutEdgeListS = boost::listS; ProcessGroup = boost::graph::distributed::mpi_process_group; InVertexListS = boost::vecS; InDistribution = boost::defaultS; DirectedS = boost::bidirectionalS; VertexProperty = boost::no_property; EdgeProperty = boost::no_property; GraphProperty = boost::no_property; EdgeListS = boost::listS]’:
../../../boost/graph/distributed/adjlist/handlers.hpp:107:11:   required from ‘void boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::handle_add_edge_with_property(int, int, const msg_add_edge_with_property_data&, boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::trigger_receive_context) [with OutEdgeListS = boost::listS; ProcessGroup = boost::graph::distributed::mpi_process_group; InVertexListS = boost::vecS; InDistribution = boost::defaultS; DirectedS = boost::bidirectionalS; VertexProperty = boost::no_property; EdgeProperty = boost::no_property; GraphProperty = boost::no_property; EdgeListS = boost::listS; boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::msg_add_edge_with_property_data = boost::detail::parallel::msg_add_edge_with_property_data<boost::detail::parallel::global_descriptor<long unsigned int>, long unsigned int, boost::no_property>; boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::trigger_receive_context = boost::parallel::trigger_receive_context]’
../../../boost/graph/distributed/adjlist/handlers.hpp:38:18:   required from ‘void boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::setup_triggers() [with OutEdgeListS = boost::listS; ProcessGroup = boost::graph::distributed::mpi_process_group; InVertexListS = boost::vecS; InDistribution = boost::defaultS; DirectedS = boost::bidirectionalS; VertexProperty = boost::no_property; EdgeProperty = boost::no_property; GraphProperty = boost::no_property; EdgeListS = boost::listS]’
../../../boost/graph/distributed/adjacency_list.hpp:1585:7:   required from ‘boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::adjacency_list(EdgeIterator, EdgeIterator, boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::vertices_size_type, const ProcessGroup&, const GraphProperty&) [with EdgeIterator = boost::erdos_renyi_iterator<boost::random::linear_congruential_engine<unsigned int, 48271, 0, 2147483647>, boost::adjacency_list<boost::listS, boost::distributedS<boost::graph::distributed::mpi_process_group, boost::vecS>, boost::bidirectionalS> >; OutEdgeListS = boost::listS; ProcessGroup = boost::graph::distributed::mpi_process_group; InVertexListS = boost::vecS; InDistribution = boost::defaultS; DirectedS = boost::bidirectionalS; VertexProperty = boost::no_property; EdgeProperty = boost::no_property; GraphProperty = boost::no_property; EdgeListS = boost::listS; boost::adjacency_list<OutEdgeListS, boost::distributedS<ProcessGroup, InVertexListS, InDistribution>, DirectedS, VertexProperty, EdgeProperty, GraphProperty, EdgeListS>::vertices_size_type = long unsigned int]’
adjlist_build_test.cpp:71:47:   required from here
../../../boost/graph/distributed/adjacency_list.hpp:2587:51: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2587 |     if (this->committed || std::uncaught_exception())
      |                            ~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2587:51: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2587 |     if (this->committed || std::uncaught_exception())
      |                            ~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~
In file included from adjlist_build_test.cpp:10:
../../../boost/graph/distributed/adjacency_list.hpp:2587:51: warning: ‘bool std::uncaught_exception()’ is deprecated [-Wdeprecated-declarations]
 2587 |     if (this->committed || std::uncaught_exception())
      |                            ~~~~~~~~~~~~~~~~~~~~~~~^~
In file included from ../../../boost/throw_exception.hpp:27,
                 from adjlist_build_test.cpp:9:
/usr/include/c++/10/exception:106:8: note: declared here
  106 |   bool uncaught_exception() _GLIBCXX_USE_NOEXCEPT __attribute__ ((__pure__));
      |        ^~~~~~~~~~~~~~~~~~

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.