4.1.8.2 Casting far address to near address and then converting to far address
When a static variable is initialized as follows, loss of the upper-order 2 bytes due to a cast to a near pointer does not occur.
(Cast to four or more bytes)(Cast to near pointer)(far address constant)
This specification is valid only when -ansi is not used.
int __far x;
static long l = (long)(int __near*)&x; //far address is stored in l
|