Можно проверять на выравнивние. В некоторых функциях WinAPI есть такие проверки. Много раз наступал на грабли - функция выполнилась, ошибки нет, а нифига не сработало
Ну это рассчитано на Си-компиляторы, конечно. Они же сами выравнивают, поэтому Microsoft думает, что сделали правильно (Ну хотя это и есть "правильно", если бы ещё добавили ошибку об этом, а так - да, нужно не забывать выравнивать)