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.


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) -
>template <typename T> struct is_pointer
> static T t;
> 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?

Boost list run by bdawes at, gregod at, cpdaniel at, john at