Boost logo

Boost :

Subject: Re: [boost] [type_traits][multi_index][msvc-7.1] problems with is_const in VC 7.1
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2015-10-16 07:57:11


On 16/10/2015 11:14, Joaquin M LópezMuñoz wrote:
> Overloads can be only be equal if either Value is not a const type or
> boost::remove_const is not working... and moreover this was working
> perfectly fine against former versions of Boost.TypeTraits.
>
> The problem happens not only with global_fun but also with identity,
> which might be easier to analyze. Could you please run this and report
> the results?
>
> [...]
>
> The correct result should be:
>
> 0
> 1
> 0
> 1

MSVC-7.1 outputs the same result. During previous experiments I even
checked that is_const<remove_reference<Value> >::value was true inside
const_ref_global_fun_base (static asserted) and even that

typename remove_const<
         typename remove_reference<Value>::type>::type

was a different type than

typename remove_reference<Value>::type

But for some reason MSVC fails to see both overloads as different.

Best,

Ion


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk