$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [boost] [test]enable_if, etc. : was : ...multiprecision types ... for unit tests?
From: Christopher Kormanyos (e_float_at_[hidden])
Date: 2013-06-13 14:37:54
> Christopher Kormanyos <e_float <at> yahoo.com> writes:
>> * OK for GCC 4.7.2
>> * Errors for VC10 (ambiguous symbols), AKA VisualStudio 2010
>> * Errors for VC11 (ambiguous symbols), AKA VisualStudio 2012
>Sorry. I've misinterpreted MSVC output. I do see the error now. And... this
>is really weird one. I did not see something like this in a long time. What
>it comes to can be illustrated in this example:
<snip code sample>
>I'm sure it can be simplified further by removing specifics of
>multiprecision library. And the offending line is ... the template
>instantiation, in unrelated namespace HAS NOTHING TO DO with enable_if at
>all.
So if I understand, we are actually dealing with a compiler
issue here regarding the proper resolution of namespaces.
Is that what you are saying?
<snip>
>Any hints are welcome.
>Gennadiy
I think it would be best to qualify enable_if and disable_if
with the boost namespace in multiprecision. John, what
is you opinion?
But you are right in principle, it seems to be a compiler
issue. I apologize for wrongly involving your code in
this test case.
Gennadiy, do you really want to go the hard road and
use symbols inject enable_if, etc. in namespaces in your code.
It just seems like playing with fire since this symbol has such
a clear meaning in C++11. It's your decision, but it would
scare me enough to create my_enable_if, etc.
But again, it seems as though your code is right and
MSVC is wrong. Just a tough waiting game on a compiler
issue like that.
Have we cleared this one up now? Should I investigate
anything further? John, should we decorate multiprecision?
No Hurry here, it's something for 1.55.
Sincerely, Chris.