...
reinterpret_cast
of a pointer type is defined by [expr.reinterpret.cast], paragraph 7, as being static_cast<cv T *>(static_cast<cv void *>(PtrValue))
, meaning that reinterpret_cast
is simply a sequence of static_cast
operations. C-style casts of a pointer to incomplete an incomplete object type are defined as using either static_cast
or reinterpret_cast
(it is unspecified which is picked is unspecified) in [expr.cast], paragraph 5.
...