bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#11913: Unusual Emacs 24.1 arithmetic error (abs) on i386 machine


From: Rob Browning
Subject: bug#11913: Unusual Emacs 24.1 arithmetic error (abs) on i386 machine
Date: Mon, 16 Jul 2012 21:33:58 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1 (gnu/linux)

Rob Browning <rlb@defaultvalue.org> writes:

> Glenn Morris <rgm@gnu.org> writes:
>
>> But why does (abs 8.0) return an arithmetic error at all...?
>
> OK, at the moment, I believe the short answer is because fabs() is
> changing errno which triggers the default clause in IN_FLOAT() here:
>
>     default: arith_error (float_error_fn_name, float_error_arg);
>
> I've been told that this should be considered an Emacs bug because the
> effect of fabs() on errno is strictly undefined, and so fabs() is within
> its rights to do whatever it wants to the value.

For now, I'm going to deploy a patch in the Debian package that just
adds a DEB_IN_FLOAT_NOERRNO() that omits the errno checking, and then
uses that macro for the fabs() call.

Doing something with a similar result would probably be advisable.

Thanks for the help.
-- 
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4





reply via email to

[Prev in Thread] Current Thread [Next in Thread]