ByteBuffer::align() does not work as expected
on some RTEMS targets where malloc() returns
buffers aligned only to 4 bytes.
SerializableControl::alignBuffer() and
DeserializableControl::alignData() are implemented,
but never called, in this module and pvAccessCPP.
ByteBuffer::align() is only needed to implement
these two methods.
Leave non-pure virtual stubs to assist in migration.
align(n) now fills skipped bytes with '\0'.
align(n,f) to choose a different fill value.
No other changes intended
Use intrinsic byte order swapping builtins for gcc, clang, and msvc.
use assert() to check pre/post conditions.
Remove unused condition macros and unreachable code.
Add tests of byte swapping primitives and
test the correctness of unaligned operations.
add illustrations of flip() and rewind()