procedure TTimeMark.View(...);//один из методов объекта
- Код: Выделить всё
- var
 x:integer;
 s:single;
 ...
 s:=x;//тут получаю SIGFPE!!!!!!
Сделал программу для проверки бага из трёх строк всё ОК!!!
- Код: Выделить всё
- var
 x:integer;
 s:single;
 begin
 readln(x);
 s:=x; //всё ОК!!!
 writeln(s);
 readln;
 end;
везде код одинаковый, кроме как передача параметров
в методе объекта (понятное дело, тут ebp ибо стэк)
fildl -12(%ebp)
fstps -28(%ebp)
в простой программке (прямая адресация)
fildl ..x
fstps ..s
потом перенёс в отдельную процедуру, получил так же код со стеком
fildl -4(%ebp)
fstps -8(%ebp)
но и там всё хорошо, т.е. ошибка происходит в методе объекта
вот, как лечить?
учимся правильно оформлять сообщения



