Hello all! I have some lack of understanding how to write endianness independent definition of structure, which contains bit fields. For example, field, containing endpoint address in endpoint descriptor of USB device, can be defined as follow: struct EndpointAddress { UnsignedByte EndpointNumber: 4; UnsignedByte: 3; UnsignedByte TransferDirection: 1; }; All USB descriptors have little endian byte order (and filling starting from least significant bit). If I would run some code which uses such definition on big endian CPU, I will get incorrect result. Can I tell GCC to use for layout big/little endian mode without manual changing structure layout for target CPU? -- With best regards, Vladimir