Skip to content

incompatible with igraph 1.0.0 #623

@dotlambda

Description

@dotlambda

Igraph just published version 1.0.0 which breaks HAL:

FAILED: [code=1] plugins/graph_algorithm/CMakeFiles/graph_algorithm.dir/src/algorithms/shortest_path.cpp.o 
/nix/store/95k9rsn1zsw1yvir8mj824ldhf90i4qw-gcc-wrapper-14.3.0/bin/g++ -DFMT_SHARED -DSPDLOG_COMPILED_LIB -DSPDLOG_FMT_EXTERNAL -DSPDLOG_SHARED_LIB -Dgraph_algorithm_EXPORTS -I/build/source/include -I/build/source/hal_plugins -I/build/source/plugins -I/build/source/build -I/build/source/plugins/graph_algorithm/include -I/build/source/plugins/graph_algorithm/nix/store/pj1yh79gyhk2sva0kc2g8v608vpsk6v8-igraph-1.0.0-dev/include/igraph -I/build/source/deps/abc/src -isystem /build/source/deps/subprocess -isystem /nix/store/829wb290i87wngxlh404klwxql5v18p4-python3-3.13.7/include/python3.13 -fopenmp -pthread -O3 -DNDEBUG -std=gnu++17 -fPIC -O3 -DNDEBUG -Wall -Wextra -pedantic -Wshadow -Wno-undef -Werror=return-type -fdiagnostics-color=always -fsized-deallocation -Wno-unused-function -Wno-write-strings -Wno-sign-compare -DABC_USE_STDINT_H=1 -DABC_USE_CUDD=1 -DABC_USE_PTHREADS -Wno-unused-but-set-variable -w -MD -MT plugins/graph_algorithm/CMakeFiles/graph_algorithm.dir/src/algorithms/shortest_path.cpp.o -MF plugins/graph_algorithm/CMakeFiles/graph_algorithm.dir/src/algorithms/shortest_path.cpp.o.d -o plugins/graph_algorithm/CMakeFiles/graph_algorithm.dir/src/algorithms/shortest_path.cpp.o -c /build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp
/build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp: In function 'hal::Result<std::vector<std::vector<unsigned int> > > hal::graph_algorithm::get_shortest_paths_igraph(NetlistGraph*, u32, const igraph_vector_int_t*, NetlistGraph::Direction)':
/build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp:125:74: error: cannot convert 'igraph_vector_int_list_t*' to 'const igraph_vector_t*'
  125 |             if (auto res = igraph_get_shortest_paths(graph->get_graph(), &paths_raw, nullptr, from_vertex, v_sel, mode, nullptr, nullptr); res != IGRAPH_SUCCESS)
      |                                                                          ^~~~~~~~~~
      |                                                                          |
      |                                                                          igraph_vector_int_list_t*
In file included from /nix/store/pj1yh79gyhk2sva0kc2g8v608vpsk6v8-igraph-1.0.0-dev/include/igraph/igraph.h:53,
                 from /build/source/plugins/graph_algorithm/include/graph_algorithm/netlist_graph.h:33,
                 from /build/source/plugins/graph_algorithm/include/graph_algorithm/algorithms/shortest_path.h:33,
                 from /build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp:1:
/nix/store/pj1yh79gyhk2sva0kc2g8v608vpsk6v8-igraph-1.0.0-dev/include/igraph/igraph_paths.h:118:51: note:   initializing argument 2 of 'igraph_error_t igraph_get_shortest_paths(const igraph_t*, const igraph_vector_t*, igraph_vector_int_list_t*, igraph_vector_int_list_t*, igraph_int_t, igraph_vs_t, igraph_neimode_t, igraph_vector_int_t*, igraph_vector_int_t*)'
  118 |     const igraph_t *graph, const igraph_vector_t *weights,
      |                            ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
In file included from /build/source/include/hal_core/netlist/boolean_function.h:30,
                 from /build/source/include/hal_core/netlist/gate_library/gate_type.h:28,
                 from /build/source/include/hal_core/netlist/gate_library/gate_library.h:29,
                 from /build/source/include/hal_core/netlist/netlist.h:30,
                 from /build/source/plugins/graph_algorithm/include/graph_algorithm/netlist_graph.h:29:
/build/source/include/hal_core/utilities/result.h:56:5: error: could not convert '{hal::result_constructor_type::ER(), <expression error>}' from '<brace-enclosed initializer list>' to 'hal::Result<std::vector<std::vector<unsigned int> > >'
   56 |     }
      |     ^
      |     |
      |     <brace-enclosed initializer list>
/build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp:129:24: note: in expansion of macro 'ERR'
  129 |                 return ERR(igraph_strerror(res));
      |                        ^~~
/build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp: In function 'hal::Result<std::vector<std::vector<unsigned int> > > hal::graph_algorithm::get_all_shortest_paths_igraph(NetlistGraph*, u32, const igraph_vector_int_t*, NetlistGraph::Direction)':
/build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp:267:78: error: cannot convert 'igraph_vector_int_list_t*' to 'const igraph_vector_t*'
  267 |             if (auto res = igraph_get_all_shortest_paths(graph->get_graph(), &paths_raw, nullptr, nullptr, from_vertex, v_sel, mode); res != IGRAPH_SUCCESS)
      |                                                                              ^~~~~~~~~~
      |                                                                              |
      |                                                                              igraph_vector_int_list_t*
/nix/store/pj1yh79gyhk2sva0kc2g8v608vpsk6v8-igraph-1.0.0-dev/include/igraph/igraph_paths.h:173:51: note:   initializing argument 2 of 'igraph_error_t igraph_get_all_shortest_paths(const igraph_t*, const igraph_vector_t*, igraph_vector_int_list_t*, igraph_vector_int_list_t*, igraph_vector_int_t*, igraph_int_t, igraph_vs_t, igraph_neimode_t)'
  173 |     const igraph_t *graph, const igraph_vector_t *weights,
      |                            ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/build/source/include/hal_core/utilities/result.h:56:5: error: could not convert '{hal::result_constructor_type::ER(), <expression error>}' from '<brace-enclosed initializer list>' to 'hal::Result<std::vector<std::vector<unsigned int> > >'
   56 |     }
      |     ^
      |     |
      |     <brace-enclosed initializer list>
/build/source/plugins/graph_algorithm/src/algorithms/shortest_path.cpp:271:24: note: in expansion of macro 'ERR'
  271 |                 return ERR(igraph_strerror(res));
      |                        ^~~

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions