I've got a constant pointer of type *TypeB from the address of a global variable and I need to cast it to a pointer of type *TypeA where TypeB is different from TypeA but is also a valid TypeA.
For example TypeA might have the members (uint id, int data1) and TypeB might have the members (uint id, int data1, int data2).
The question is how do cast a constant pointer to a different type while keeping it constant (without instructions).