> -- Илья Ермаков писал(а):
> Если я не ошибаюсь, то в Обероне-07, который сделан с учётом опыта Оберона-SA, это как-то связано с особенностями целевой платформы StrongARM. Было такое предположение.
Откровенно говоря, не помню в АРМах ничего такого.
Помню что да, переменные должны располагаться по адресам кратным своим размерам.
Т.е. простой и нивинный код сишный навроде:
## Код:
```
void unpack(char* buf) { // buf -- это буфер который приехал по сети например.
    // таки знаем что первые 4ре байта у нас int
    int* id = (int*)buf;
    (*id)++; /* с большой вероятностью будет ошибка в момент исполнения на ARM'e, на x86 ошибки не будет никогда. */
    // собственно на чтение тоже будет ошибка
    int some = *id;
}
```

является пакостью.

Но как это связано с обероновскими массивами, если связано вообще?