latest release doesn't compile with clang-8.0
Bug reports:
Please follow the general troubleshooting steps first:
-
Are you running the latest graph-tool
version? -
Do you observe the problem with the current git version? -
Are you using Macports or Homebrew? If yes, please submit an issue there instead: https://github.com/Homebrew/brew/issues and https://trac.macports.org/newticket -
Did you compile graph-tool
manually? -
If you answered yes above, did you use the exact same compiler to build graph-tool
,boost-python
andPython
?
Please replace this section with a brief summary of your issue.
Do not forget to supply the following information:
-
A minimal and self-contained example that shows the problem. -
Your operating system. -
The Python version you are using. -
If you compiled graph-tool manually: Your compiler version, as well as the version of Boost being used. -
If you are reporting a compilation error, please provide the entire ./configure
output, as well as the entire contents of theconfig.log
file and the entire compilation output.
I have locally added a clang8.0 variant to my py-graph-tool port in MacPorts. I get this error:
:info:build In file included from graph_closeness.cc:18:
:info:build In file included from ../../../src/graph/graph_filtering.hh:21:
:info:build In file included from ../../../src/graph/graph.hh:23:
:info:build In file included from /opt/local/include/boost/python/object.hpp:9:
:info:build In file included from /opt/local/include/boost/python/object_core.hpp:14:
:info:build In file included from /opt/local/include/boost/python/call.hpp:15:
:info:build In file included from /opt/local/include/boost/python/converter/arg_to_python.hpp:10:
:info:build In file included from /opt/local/include/boost/python/to_python_indirect.hpp:10:
:info:build In file included from /opt/local/include/boost/python/object/pointer_holder.hpp:14:
:info:build In file included from /opt/local/include/boost/python/instance_holder.hpp:11:
:info:build In file included from /opt/local/include/boost/python/type_id.hpp:14:
:info:build In file included from /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/ostream:138:
:info:build In file included from /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/ios:216:
:info:build In file included from /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/__locale:15:
:info:build In file included from /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/string:505:
:info:build In file included from /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/string_view:176:
:info:build In file included from /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/__string:57:
:info:build /opt/local/libexec/llvm-8.0/bin/../include/c++/v1/algorithm:2494:5: error: static_assert failed due to requirement '__is_forward_iterator<boost::adj_list<unsigned long>::edge_iterator>::value' "std::max_element requires a ForwardIterator"
:info:build static_assert(__is_forward_iterator<_ForwardIterator>::value,
:info:build ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:info:build ../../../src/graph/graph_adjacency.hh:452:26: note: in instantiation of function template specialization 'std::__1::max_element<boost::adj_list<unsigned long>::edge_iterator, (lambda at ../../../src/graph/graph_adjacency.hh:453:38)>' requested here
:info:build auto iter = std::max_element(erange.first, erange.second,
:info:build ^
:info:build ../../../src/graph/graph.hh:109:33: note: in instantiation of member function 'boost::adj_list<unsigned long>::shrink_to_fit' requested here
:info:build void shrink_to_fit() { _mg->shrink_to_fit(); }
:info:build ^
:info:build 2 warnings and 1 error generated.
I am using Boost 1.69, Python 3.7, Clang 8.0.