Compile error: scoped_lock is ambiguous

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 and Python?

When compiling errors are hit in:

src/graph/inference/blockmodel/graph_blockmodel.hh

Specifically

1512 scoped_lock lock(_lock);

I believe this is due to the use of:

33 using namespace std;

as scoped_lock is defined in the package under:

src/graph/openmp_lock.hh

This results in an ambiguous use error from the compiler.

Perhaps this is due to me using OSX the other version is located under:

/Library/Developer/CommandLineTools/usr/include/c++/v1//mutex:class scoped_lock // C++17

Do not forget to supply the following information:

  • A minimal and self-contained example that shows the problem.
  • Running macOS 10.13.5
  • Running Python 3.6 in a conda env
  • gcc version - Apple LLVM version 10.0.0 (clang-1000.10.44.2), Target: x86_64-apple-darwin17.6.0, Thread model: posix
  • boost 1.67.0_1
  • configure]