Boost logo

Boost :

From: Howard Hinnant (hinnant_at_[hidden])
Date: 2000-12-19 20:28:25


I have not worked on type_traits and I wouldn't be surprised if no else
has lately either. I'm (as usual) swamped right now. But maybe over the
holidays I can snag a few cycles to make these changes in type_traits.hpp.

-Howard

Dave Abrahams wrote on 12/18/2000 11:41 AM
>I know we had a long discussion about the intent of the standard with
>regard to the question "is T* const a pointer"? I think the
>resolution was that, however strict, our previous reading of the
>standard misconstrued its intent and we would change the behavior of
>type_traits appropriately. Did that ever happen, or have I
>misunderstood our conclusion?
>
>Reading ob_type_traits.hpp, I see:
>
>----
>//* is a type T a pointer type (including function pointers) -
>is_pointer<T>
>template <typename T> struct is_pointer
>{
>private:
> static T t;
>public:
> enum{ value = (!is_const<T>::value
> & !is_volatile<T>::value
> & !is_reference<T>::value
> & !is_array<T>::value)
> & ((1 == sizeof(detail::is_pointer_helper(t)))
> | (1 == sizeof(detail::is_pointer_helper3
>(t)))) };
>};
>-----
>
>This seems to indicate that T* const or T* volatile will not be
>treated as pointers by type_traits. Have I misread the code?
>
>Thanks,
>Dave
>
>
>
>


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