No such thing as a 'Nibble' in C++?

And also incredibly irritating if you inadvertently use the same union at opposite ends of a link with different endianness.

perhaps, but that is nothing that cannot be solved by a quick lookup table.