Spelling fixes

No functional change
Validate pointer alignment when bitcasting

When bitcasting an integer to a pointer, verify that the casted value is
correctly aligned to the destination type. It is undefined behaviour to
load a primitive from an un-aligned pointer.