
минимальная программа:
- Код: Выделить всё
- program float_overflow;
 {$mode objfpc}{$H+}
 uses
 {$IFDEF UNIX}{$IFDEF UseCThreads}
 cthreads,
 {$ENDIF}{$ENDIF}
 Classes
 { you can add units after this };
 var
 z: single = 0.0;
 b: single = 1.0e30;
 c: single = 1.0e30;
 begin
 z:= b*c;
 writeln(z);
 readln;
 end.
на ubuntu вот такое:
- Код: Выделить всё
- yr@E525:~/ME/projects/lazarus/test1$ ./float_overflow
 An unhandled exception occurred at $000000000040109B:
 EDivByZero: Division by zero
 $000000000040109B
на виндовс 10 x64 (fpc 3.2) все как в аптеке:
- Код: Выделить всё
- E:\tmp\pas_tests>float_overflow.exe
 An unhandled exception occurred at $00000001000016DA:
 EOverflow: Floating point overflow
 $00000001000016DA main, line 16 of float_overflow.lpr
почему так?



