
Phil Endecott wrote:
The code that I'm still unable to compile is at http://chezphil.org/tmp/testpoly.cc - if anyone can work out what I've done wrong, please let me know!
changing line 192, 193 of the file rectangle_concept.hpp from set(lvalue, HORIZONTAL, get(rvalue, HORIZONTAL)); set(lvalue, VERTICAL, get(rvalue, VERTICAL)); to boost::polygon::set(lvalue, HORIZONTAL, get(rvalue, HORIZONTAL)); boost::polygon::set(lvalue, VERTICAL, get(rvalue, VERTICAL)); solves the problem for me. I'm no ADL expert (ADL=argument dependent lookup), but I guess the std::pair returned by get for your custom rectangle type pulls in the std namespace, so that the name conflict with std::set occurs. Fully qualifying the calls as I proposed is the correct solution for such ADL problems, IIRC. Regards, Thomas