[fpc-pascal] EControlC instead of EZeroDivide when using SSE instructions
Jonas Maebe
jonas.maebe at elis.ugent.be
Wed Aug 22 13:28:40 CEST 2012
OBones wrote on Wed, 22 Aug 2012:
> Olivier SANNIER wrote:
>> Does any of you have any suggestion as to explain this behavior, and best of
>> all, how to fix it?
> I went further and changed the code this so that I can get better
> details as to where the exception is coming from:
EControlC is the translation of run time error 217. The Win32
exception handler also sets error code 217 in case of an unknown
exception (the Win64 exception handler does the same, for that
matter). Apparently Win32 is not reporting that division-by-zero as
either STATUS_INTEGER_DIVIDE_BY_ZERO or STATUS_FLOAT_DIVIDE_BY_ZERO,
while Win64 does do this.
You can try debugging syswin32_i386_exception_handler in
rtl/win32/system.pp to see what exception Win32 reports instead.
Jonas
More information about the fpc-pascal
mailing list