LINUX.ORG.RU

История изменений

Исправление shkolnick-kun, (текущая версия) :

Вот не помню точно, то ли компилятор не сделал нормально выравнивание во вложенной структуре, то ли я доигрался с указателями.

Скорее второе, иначе должно было выровнять поля по самому «длинному».

В Cortex-M0 еще «круче», там нельзя делать доступ к не выровненным uint16_t uint32_t по указателям. Точнее можно, но через memset...

Исходная версия shkolnick-kun, :

Вот не помню точно, то ли компилятор не сделал нормально выравнивание во вложенной структуре, то ли я доигрался с указателями.

Скорее второе, иначе должно было выровнять поля по самому «длинному».

В Cortex-M0 еще «круче», там нельзя делать доступ к не выровненным uint16_t uint32_t по указателям.