struct foo { @0x0 void *x; @0x28; }; typedef short int16; typedef long int32; typedef long long int64; typedef char int8; typedef unsigned short uint16; typedef unsigned long uint32; typedef unsigned long long uint64; typedef unsigned char uint8; typedef unsigned long uintptr; sizeof(p->x) = 4 typeof(p->x) = void * sizeof(p) = 4 typeof(p) = void * typeof(*p) = void