correct bit fields portability issue