It seems to me that the current implementation of is_convertible will
conclude that int* is convertible to int[10].  That's because when a
function parameter is of array type, it is treated just like a pointer.  But
according to 4/3 of the standard:

"An expression e can be _implicitly converted_ to a type T if an only if the
declaration "T t=e;" is well-formed for some invented variable t (8.5)."

By this definition, int* is not implicitly convertible to int[10].  So it
seems is_convertible is broken in this regard.  IMO, is_convertible<A,B>
should always return false when B is an array type.

Eric



_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to