Compiler: field returning different types on different targets
This is something that occured to me when discussing the bitmaps topic. **Can same field result in different types on different target runtimes?** I would appreciate an authoritative anwer on current consensus on this semantic.
If yes, that would be very useful for selectively implementing new and complex types like bitmaps/narrays.

Obvious case: If target does not support bigints, then u1024 type would result in 64-bit int on C target but bigint on Python/Ruby targets. 

Complex case: If target does not support multidimensional arrays, then array discussed in https://github.com/kaitai-io/kaitai_struct/issues/188#issuecomment-358642550 would result in char* or bytearray on C target but numpy arrays on Python.
