![]() |
![]() |
trminator |
![]()
Сообщение
#1
|
Четыре квадратика ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 579 Пол: Мужской Репутация: ![]() ![]() ![]() |
Код program test_err; uses sysutils; // для работы try... except var a, b : double; begin repeat try readLn(a, b); writeLn(a / b) // Попытка выполнить деление. А делить будем на ноль... except writeLn('Err found!!!') end; until false end. Вот такая программа ловит ошибку ровно один раз. На второй раз валится... Код $ fpc test_err.pas -S2 // Компилируем в режиме совместимости с ObjectPascal $ ./test_err 2 0 Err found!!! 2 0 Floating point exception Самое интересное, что на домашнем компьютере (SuSE 9.0 ядро 2.4.<что-то-из-последних> или на любом компе с Win*) работает. Но стабильно падает на SuSE 9.1 (ядро 2.6.5). Компилятор в обоих случаях - fpc 1.0.10 Еще более интересный факт: берем программу, скомпилированную и стабильно работающую "дома" и тащим на этот компьютер. Валится. Берем программу, скомпилированную на этом "глючном" компе, тащим домой. Работает. От библиотек зависеть, по идее, не должно - библиотеки линкуются статически Код $ ldd ./test_err not a dynamic executable Кто-нибудь может предположить, в чем проблема? У кого стоит linux ядер 2.6, прогоните, пожалуйста, эту программу! -------------------- Закон добровольного труда Зимерги:
Люди всегда согласны сделать работу, когда необходимость в этом уже отпала |
![]() ![]() |
![]() |
Текстовая версия | 17.07.2025 23:36 |