|
Boost : |
From: Gennaro Prota (gennaro_prota_at_[hidden])
Date: 2002-12-08 07:29:57
On 07 Dec 2002 21:16:49 +0100, Gabriel Dos Reis
<gdr_at_[hidden]> wrote:
>Do you mean it is invalid to reinterpret_cast<> to void*?
Well, I'm not sure.
5.2.10/7: "A pointer to an object can be explicitly converted to
a pointer to an object of different type.65) Except that converting
an rvalue of type "pointer to T1" to the type "pointer to T2" (where
T1 and T2 are object types and where the alignment requirements of
T2 are no stricter than those of T1) and back to its original type
yields the original pointer value, the result of such a pointer
conversion is unspecified.
If void* is not a "pointer to an object" then reinterpret_cast<void*>
is invalid. Otherwise it just yields an undefined result. I haven't
found a definition of "pointer to object" in the standard; anyhow
certainly void is not an object type.
Genny.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk