> -- perloid писал(а):
> есть ли в Ofront+  проверки на ошибки типа выхода индекса за пределы массива и тп.?В семействе Ofront (Ofront, Ofront+, voc) такая проверка есть. Для эффективности она опциональная (по умолчанию включена).

Также есть проверка границ значений вычисляемых выражений, т.е. в коде вида:
## Код:
```
VAR s: SHORTINT; i: INTEGER;
BEGIN
  ...
  s := SHORT(i);
...
```
выражение может быть проверено, не выходит ли его значение за пределы типа SHORTINT. Эта проверка по умолчанию выключена.

Разумеется, реализована и охрана типа (check type guards).

> -- perloid писал(а):
> Т.е. мне хочется более получать безопасный код по сравнению с написанием на С- предоставит ли мне данный транслятор эту возможность?Оберон-языки по своей структуре позволяют писать более безопасный код, предоставляя возможности для локализации опасных мест внутри системно-ориентированных модулей, в то время как Си не препятствует передавать ссылки на что угодно внутрь самых обычных рядовых функций. В Обероне строки имеют поле "длина". Так что тут вопрос даже, скорее, не к транслятору, а к языку.

Если Вас интересует, насколько надёжен генерируемый с помощью Ofront+ код, то он вполне приемлем. Хотя известные проблемы есть, не буду лукавить. Например, со сборщиком мусора. Он очень топорно адаптирован для 64 бит. Но это проблема реализации, надо поправить.

> -- perloid писал(а):
> по сравнению с XDSАга. Вот она, соль жизниОпасность XDS-C в том, что если упрётесь в его недостаток или баг носом, то это всё. Не лечится. А проблему в Ofront+ можно будет исправить. Если не я, так Вы сами, своими силами. Всё опенсоурс.