
Steven Watanabe wrote:
AMDG
Thomas Klimpel wrote:
Thomas Klimpel wrote:
Fully qualifying the calls as I proposed is the correct solution for such ADL problems, IIRC.
Even if the above statement should be true, my proposed fix still had a potential ADL issue. I guess
::boost::polygon::set(lvalue, HORIZONTAL, get(rvalue, HORIZONTAL)); ::boost::polygon::set(lvalue, VERTICAL, get(rvalue, VERTICAL));
is the correct fix, but check with an ADL expert to be sure.
Any qualification suppresses ADL. You don't need full qualification.
FWIW, so does wrapping the function name into parenthesis, as in: (set)(lvalue, HORIZONTAL, get(rvalue, HORIZONTAL)); (set)(lvalue, VERTICAL, get(rvalue, VERTICAL)); I just pointed it out as that technique can be more usable than qualification. Best -- Fernando Cacciola SciSoft Consulting, Founder http://www.scisoft-consulting.com