H
Harald van Dijk
 int i;
 double *p;
 p = (double *) &i;
 assert((int *) p == &i);However, that is the _only_ guarantee made about the value of p. Since
dereferencing p is not allowed in strictly conforming programs anyway,
the standard does not need to, and does not, address the question of
whether p points to any object at all.
[...]
I don't believe the standard guarantees that at all.
As before in this thread, a part of the sentence is missing. The point
was that the standard requires that the assert passes, if &i is
suitably aligned for a pointer of type double *. Sorry for the
confusion.