From unknown Sun Jun 22 03:48:40 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#19025 <19025@debbugs.gnu.org> To: bug#19025 <19025@debbugs.gnu.org> Subject: Status: 24.4; precision error when adding two floats Reply-To: bug#19025 <19025@debbugs.gnu.org> Date: Sun, 22 Jun 2025 10:48:40 +0000 retitle 19025 24.4; precision error when adding two floats reassign 19025 emacs submitter 19025 "Kevin W. Currey" severity 19025 normal tag 19025 notabug thanks From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 11 20:24:22 2014 Received: (at submit) by debbugs.gnu.org; 12 Nov 2014 01:24:22 +0000 Received: from localhost ([127.0.0.1]:57961 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoMfV-0003oe-GU for submit@debbugs.gnu.org; Tue, 11 Nov 2014 20:24:22 -0500 Received: from eggs.gnu.org ([208.118.235.92]:40081) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoLvm-0002QM-Jy for submit@debbugs.gnu.org; Tue, 11 Nov 2014 19:37:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoLvc-0004dx-Ia for submit@debbugs.gnu.org; Tue, 11 Nov 2014 19:37:06 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: *** X-Spam-Status: No, score=3.6 required=5.0 tests=BAYES_50, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE, RECEIVED_FROM_WINDOWS_HOST autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:43302) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoLvc-0004dr-F8 for submit@debbugs.gnu.org; Tue, 11 Nov 2014 19:36:56 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41724) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoLvU-0000kf-Qv for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 19:36:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoLvN-0004ac-7H for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 19:36:48 -0500 Received: from blu004-omc1s14.hotmail.com ([65.55.116.25]:58915) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoLvN-0004aN-22 for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 19:36:41 -0500 Received: from BLU173-W24 ([65.55.116.9]) by BLU004-OMC1S14.hotmail.com over TLS secured channel with Microsoft SMTPSVC(7.5.7601.22751); Tue, 11 Nov 2014 16:36:40 -0800 X-TMN: [C+JyY6c02cwC1Epj55I83Rd4doADuzO2] X-Originating-Email: [kevalier68@hotmail.com] Message-ID: Content-Type: multipart/alternative; boundary="_d1d2cd7a-f2d6-4b97-a5fc-e39bdbee79ac_" From: "Kevin W. Currey" To: "bug-gnu-emacs@gnu.org" Subject: 24.4; precision error when adding two floats Date: Tue, 11 Nov 2014 19:36:39 -0500 Importance: Normal MIME-Version: 1.0 X-OriginalArrivalTime: 12 Nov 2014 00:36:40.0364 (UTC) FILETIME=[B996E6C0:01CFFE10] X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.8 (---) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Tue, 11 Nov 2014 20:24:20 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.8 (---) --_d1d2cd7a-f2d6-4b97-a5fc-e39bdbee79ac_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable (message "%s" (+ 379.744 57.93)) The above prints 437.67400000000004. Same if I use 57.930=2C but if I use = 57.931 (below) I get the correct answer 437.675. =20 (message "%s" (+ 379.744 57.931)) I was able to work around by using format: =20 (message "%s" (format "%f" (+ 379.744 57.93))) which prints 437.674000. =20 FYI=2C I can replicate the issue with Emacs 21.3.1. =20 Thanks=2C -Kevin =20 =20 In GNU Emacs 24.4.1 (x86_64-unknown-cygwin) of 2014-10-21 on desktop-new Windowing system distributor `Microsoft Corp.'=2C version 6.1.7601 Configured using: `configure --srcdir=3D/home/kbrown/src/cygemacs/emacs-24.4-1.x86_64/src/emacs-24.4 --prefix=3D/usr --exec-prefix=3D/usr --bindir=3D/usr/bin --sbindir=3D/usr/= sbin --libexecdir=3D/usr/libexec --datadir=3D/usr/share --localstatedir=3D/var --sysconfdir=3D/etc --libdir=3D/usr/lib --datarootdir=3D/usr/share --docdir=3D/usr/share/doc/emacs --htmldir=3D/usr/share/doc/emacs/html -C --with-w32 --without-file-notification --enable-checking 'CFLAGS=3D-ggdb -O2 -pipe -Wimplicit-function-declaration -Og -g3 -fdebug-prefix-map=3D/home/kbrown/src/cygemacs/emacs-24.4-1.x86_64/build= =3D/usr/src/debug/emacs-24.4-1 -fdebug-prefix-map=3D/home/kbrown/src/cygemacs/emacs-24.4-1.x86_64/src/ema= cs-24.4=3D/usr/src/debug/emacs-24.4-1' CPPFLAGS=3D LDFLAGS=3D' =20 =20 Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix =20 =20 Major mode: Fundamental =20 =20 Minor modes in effect: shell-dirtrack-mode: t display-time-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t line-number-mode: t Recent messages: Load-path shadows: None found. =20 =20 Features: (pp shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils info find-func grep tabify sh-script smie executable shell pcomplete compile comint ansi-color ring dabbrev cc-langs cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs arc-mode archive-mode dired-aux ispell apropos dired help-fns help-mode easymenu mule-util server edmacro kmacro cl-loaddefs cl-lib time jka-compr time-date tooltip electric uniquify ediff-hook vc-hooks lisp-float-type mwheel w32-common-fns disp-table w32-win w32-vars tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind w32 multi-tty emacs) =20 =20 Memory information: ((conses 16 145217 10616) (symbols 48 23227 0) (miscs 40 133 446) (strings 32 31064 5702) (string-bytes 1 930985) (vectors 16 15771) (vector-slots 8 452262 7494) (floats 8 82 775) (intervals 56 640 31) (buffers 960 24)) = --_d1d2cd7a-f2d6-4b97-a5fc-e39bdbee79ac_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
(message "%s" (+ 379.744 57.93))=

The above prints 437.67400000000004. =3B Same if I use 57.930= =2C but if I use =3B57.931 (below) I get the correct answer 437.675. =3B
(message "%s" (+ 379.744 57.931))

I was able to work ar= ound by using format:
 =3B
(message "%s" (format "%f" (+ 379.744 = 57.93)))

which prints 437.674000.
 =3B
FYI=2C I can replic= ate the issue with Emacs 21.3.1.
 =3B
Thanks=2C
-Kevin
&nbs= p=3B
 =3B
In GNU Emacs 24.4.1 (x86_64-unknown-cygwin)
 =3B= of 2014-10-21 on desktop-new
Windowing system distributor `Microsoft Cor= p.'=2C version 6.1.7601
Configured using:
 =3B`configure
 = =3B--srcdir=3D/home/kbrown/src/cygemacs/emacs-24.4-1.x86_64/src/emacs-24.4<= br> =3B--prefix=3D/usr --exec-prefix=3D/usr --bindir=3D/usr/bin --sbind= ir=3D/usr/sbin
 =3B--libexecdir=3D/usr/libexec --datadir=3D/usr/shar= e --localstatedir=3D/var
 =3B--sysconfdir=3D/etc --libdir=3D/usr/lib= --datarootdir=3D/usr/share
 =3B--docdir=3D/usr/share/doc/emacs --ht= mldir=3D/usr/share/doc/emacs/html -C
 =3B--with-w32 --without-file-n= otification --enable-checking 'CFLAGS=3D-ggdb
 =3B-O2 -pipe -Wimplic= it-function-declaration -Og -g3
 =3B-fdebug-prefix-map=3D/home/kbrow= n/src/cygemacs/emacs-24.4-1.x86_64/build=3D/usr/src/debug/emacs-24.4-1
&= nbsp=3B-fdebug-prefix-map=3D/home/kbrown/src/cygemacs/emacs-24.4-1.x86_64/s= rc/emacs-24.4=3D/usr/src/debug/emacs-24.4-1'
 =3BCPPFLAGS=3D LDFLAGS= =3D'
 =3B
 =3B
Important settings:
 =3B value of $L= ANG: en_US.UTF-8
 =3B locale-coding-system: utf-8-unix
 =3B =3B
Major mode: Fundamental
 =3B
 =3B
Minor mode= s in effect:
 =3B shell-dirtrack-mode: t
 =3B display-time-mo= de: t
 =3B mouse-wheel-mode: t
 =3B file-name-shadow-mode: t<= br> =3B global-font-lock-mode: t
 =3B font-lock-mode: t
 = =3B blink-cursor-mode: t
 =3B line-number-mode: t

Recent mess= ages:
Load-path shadows:
None found.
 =3B
 =3B
Featu= res:
(pp shadow sort gnus-util mail-extr emacsbug message format-spec rf= c822
mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailab= brev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-utilmail-prsvr mail-utils info find-func grep tabify sh-script smie
executa= ble shell pcomplete compile comint ansi-color ring dabbrev
cc-langs cc-m= ode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align
cc-engine cc-v= ars cc-defs arc-mode archive-mode dired-aux ispell apropos
dired help-fn= s help-mode easymenu mule-util server edmacro kmacro
cl-loaddefs cl-lib = time jka-compr time-date tooltip electric uniquify
ediff-hook vc-hooks l= isp-float-type mwheel w32-common-fns disp-table
w32-win w32-vars tool-ba= r dnd fontset image regexp-opt fringe
tabulated-list newcomment lisp-mod= e prog-mode register page menu-bar
rfn-eshadow timer select scroll-bar m= ouse jit-lock font-lock syntax
facemenu font-core frame cham georgian ut= f-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese = hebrew greek romanian slovak
czech european ethiopic indian cyrillic chi= nese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nad= vice loaddefs button
faces cus-face macroexp files text-properties overl= ay sha1 md5 base64
format env code-pages mule custom widget hashtable-pr= int-readable
backquote make-network-process dbusbind w32 multi-tty emacs= )
 =3B
 =3B
Memory information:
((conses 16 145217 1061= 6)
 =3B(symbols 48 23227 0)
 =3B(miscs 40 133 446)
 = =3B(strings 32 31064 5702)
 =3B(string-bytes 1 930985)
 =3B(v= ectors 16 15771)
 =3B(vector-slots 8 452262 7494)
 =3B(floats= 8 82 775)
 =3B(intervals 56 640 31)
 =3B(buffers 960 24))
= --_d1d2cd7a-f2d6-4b97-a5fc-e39bdbee79ac_-- From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 11 20:45:35 2014 Received: (at submit) by debbugs.gnu.org; 12 Nov 2014 01:45:35 +0000 Received: from localhost ([127.0.0.1]:57969 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoN02-0004Ko-7R for submit@debbugs.gnu.org; Tue, 11 Nov 2014 20:45:35 -0500 Received: from eggs.gnu.org ([208.118.235.92]:52366) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoMzz-0004Kf-I6 for submit@debbugs.gnu.org; Tue, 11 Nov 2014 20:45:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoMzq-0002sh-0T for submit@debbugs.gnu.org; Tue, 11 Nov 2014 20:45:31 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_40,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:36121) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoMzp-0002sZ-Tr for submit@debbugs.gnu.org; Tue, 11 Nov 2014 20:45:21 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54013) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoMzg-0007rO-TE for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 20:45:21 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoMzX-0002c4-TL for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 20:45:12 -0500 Received: from mail-pd0-x231.google.com ([2607:f8b0:400e:c02::231]:47422) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoMzX-0002Z0-Mv for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 20:45:03 -0500 Received: by mail-pd0-f177.google.com with SMTP id v10so11104130pde.22 for ; Tue, 11 Nov 2014 17:45:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=references:from:to:subject:date:in-reply-to:message-id:mime-version :content-type; bh=4aLMmOCUQCPwV40TelK+lOLj9MVhbxJexrL64rEMuWU=; b=TzHjQe7lX62J4OVCZMaOeBbwiSdjRsgyIiGTleCfFqqm0/+i57EGaWm3SfYw+vzbAT fuXqTwJQ6l7KSIeFkNGt/yX4JF3ISmggLN+n7rNT8SmqldZXX80YGlsy3g8qH/amHCEV Tz2TFyr9f//AewFjvOHPI+E31SZtqkHjc2QpR291qykYmH6NSdHuAp5f3nsmMpztlaVa TkM2IinpNe3XxDqoHONJdxyEIIl1v8iVKqkAzi2bB7zV6NURTx7aQG1YeqlaOC4bjP+s LmixH0aCQaRuVgzGZsxQg3IhJu/2Nx3YIp2hx0LDVT9LZ1IjgrTIouCJDAZeD1dH1c5U rRfw== X-Received: by 10.70.118.165 with SMTP id kn5mr15655280pdb.140.1415756702187; Tue, 11 Nov 2014 17:45:02 -0800 (PST) Received: from localhost (ppp118-209-92-67.lns20.mel4.internode.on.net. [118.209.92.67]) by mx.google.com with ESMTPSA id rz6sm20432179pbc.74.2014.11.11.17.45.00 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 11 Nov 2014 17:45:01 -0800 (PST) References: From: Alexis To: bug-gnu-emacs@gnu.org Subject: Re: bug#19025: 24.4; precision error when adding two floats Date: Wed, 12 Nov 2014 12:38:12 +1100 In-reply-to: Message-ID: <87oasd6vl4.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) Kevin W. Currey writes: > (message "%s" (+ 379.744 57.93)) > > The above prints 437.67400000000004. Same if I use 57.930, but if I use 57.931 (below) I get the correct answer 437.675. > > (message "%s" (+ 379.744 57.931)) > > I was able to work around by using format: > > (message "%s" (format "%f" (+ 379.744 57.93))) > > which prints 437.674000. > > FYI, I can replicate the issue with Emacs 21.3.1. Isn't this an artifact of the nature of floating-point arithmetic, rather than an issue with Emacs per se? For example, in Python: Python 2.7.3 (default, Mar 13 2014, 11:03:55) [GCC 4.7.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> 379.744 + 57.93 437.67400000000004 >>> Alexis. From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 11 21:06:39 2014 Received: (at control) by debbugs.gnu.org; 12 Nov 2014 02:06:39 +0000 Received: from localhost ([127.0.0.1]:57997 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoNKR-0005Cu-EH for submit@debbugs.gnu.org; Tue, 11 Nov 2014 21:06:39 -0500 Received: from ironport2-out.teksavvy.com ([206.248.154.181]:19082) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoNKO-0005Cc-BN; Tue, 11 Nov 2014 21:06:36 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvAMAOatTlRLd+sd/2dsb2JhbABcgw6DYoZ+yDmDGgQCAoEcFwEBfIQDAQEEViMQCzQSFBgNJIhUy3IBAQEBAQEEAQEBAR6RCAeESwWLZKY8gW+EFh+CegEBAQ X-IPAS-Result: AvAMAOatTlRLd+sd/2dsb2JhbABcgw6DYoZ+yDmDGgQCAoEcFwEBfIQDAQEEViMQCzQSFBgNJIhUy3IBAQEBAQEEAQEBAR6RCAeESwWLZKY8gW+EFh+CegEBAQ X-IronPort-AV: E=Sophos;i="5.04,797,1406606400"; d="scan'208";a="96683190" Received: from 75-119-235-29.dsl.teksavvy.com (HELO pastel.home) ([75.119.235.29]) by ironport2-out.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 11 Nov 2014 21:06:35 -0500 Received: by pastel.home (Postfix, from userid 20848) id 96A78848C; Tue, 11 Nov 2014 21:06:35 -0500 (EST) From: Stefan Monnier To: "Kevin W. Currey" Subject: Re: bug#19025: 24.4; precision error when adding two floats Message-ID: References: Date: Tue, 11 Nov 2014 21:06:35 -0500 In-Reply-To: (Kevin W. Currey's message of "Tue, 11 Nov 2014 19:36:39 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: control Cc: 19025-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.3 (/) tags 19025 notabug thanks > (message "%s" (+ 379.744 57.93)) > The above prints 437.67400000000004. That's the difference between floating-point numbers and real or rational numbers. > (message "%s" (format "%f" (+ 379.744 57.93))) You can cut the middle man: (message "%f" (+ 379.744 57.93)) But note that this prints something "incorrect": M-: (message "%f" (+ 379.744 57.93)) => 437.674000. M-: (equal (+ 379.744 57.93) 437.674000) => nil It's just that %f rounds differently. Stefan From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 11 21:28:48 2014 Received: (at 19025) by debbugs.gnu.org; 12 Nov 2014 02:28:48 +0000 Received: from localhost ([127.0.0.1]:58010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoNfs-0007Pq-1J for submit@debbugs.gnu.org; Tue, 11 Nov 2014 21:28:48 -0500 Received: from mail-oi0-f46.google.com ([209.85.218.46]:35696) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoNfp-0007Pd-AB for 19025@debbugs.gnu.org; Tue, 11 Nov 2014 21:28:45 -0500 Received: by mail-oi0-f46.google.com with SMTP id g201so7935216oib.19 for <19025@debbugs.gnu.org>; Tue, 11 Nov 2014 18:28:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:references:reply-to:cc:date:in-reply-to:message-id :user-agent:mime-version:content-type; bh=cbc0dfwTGan92a14MV0F1vXrxUHJc1fTYxBCcc24PIU=; b=y5Qtx216KNWPopMhnO0aj8LLlTCbnn1ZYJhtlnfXGGn/sxlfxQMmz6NlCAOqpY4PLe JLSqKcdrmY0qOY/hA9b0PuwACP6jEOrxxZ8Up2G03ZXLteoFu8uNVa6N5kE/Vc3gBKNZ fNojAlp1WBJ95LGiOnEyHgVpslww/EX4e1UifvMYoHjS7GBo0X4G46b//IRWkxyNAY8P ZmaausICZjFYmf0DO3U4uP4GAxEEO2CsFEgnhCyOhvHYuq1K6/N3kjw1Z2qOa4dKcRVz o3nYn0G0pEP5JjjeSenzg9UiYmvVijd9xAF9RbazDHAoj9UmPLK4jDVoQm1gwegLbhdS SqmA== X-Received: by 10.182.20.112 with SMTP id m16mr35439354obe.25.1415759324269; Tue, 11 Nov 2014 18:28:44 -0800 (PST) Received: from belanger-home (184-155-90-233.cpe.cableone.net. [184.155.90.233]) by mx.google.com with ESMTPSA id j8sm8579438oeq.11.2014.11.11.18.28.43 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 11 Nov 2014 18:28:43 -0800 (PST) From: Jay Belanger To: 19025@debbugs.gnu.org Subject: Re: bug#19025: 24.4; precision error when adding two floats References: <87oasd6vl4.fsf@gmail.com> Date: Tue, 11 Nov 2014 20:28:49 -0600 In-Reply-To: <87oasd6vl4.fsf@gmail.com> (Alexis's message of "Wed, 12 Nov 2014 12:38:12 +1100") Message-ID: <87mw7xtan2.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 19025 Cc: jay.p.belanger@gmail.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: jay.p.belanger@gmail.com List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) >> (message "%s" (+ 379.744 57.93)) >> >> The above prints 437.67400000000004. Same if I use 57.930, but if I >> use 57.931 (below) I get the correct answer 437.675. >> >> (message "%s" (+ 379.744 57.931)) >> >> I was able to work around by using format: >> >> (message "%s" (format "%f" (+ 379.744 57.93))) >> >> which prints 437.674000. >> >> FYI, I can replicate the issue with Emacs 21.3.1. > > Isn't this an artifact of the nature of floating-point arithmetic, rather than > an issue with Emacs per se? Yes, although it probably wouldn't be a bad idea to point out this issue in the Elisp documentation. From debbugs-submit-bounces@debbugs.gnu.org Tue Nov 11 21:49:23 2014 Received: (at submit) by debbugs.gnu.org; 12 Nov 2014 02:49:23 +0000 Received: from localhost ([127.0.0.1]:58024 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoNzn-0008Kk-Io for submit@debbugs.gnu.org; Tue, 11 Nov 2014 21:49:23 -0500 Received: from eggs.gnu.org ([208.118.235.92]:37848) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XoNzm-0008Kb-3r for submit@debbugs.gnu.org; Tue, 11 Nov 2014 21:49:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoNzf-00012l-Q3 for submit@debbugs.gnu.org; Tue, 11 Nov 2014 21:49:21 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_40,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:45175) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoNzf-00012g-Nk for submit@debbugs.gnu.org; Tue, 11 Nov 2014 21:49:15 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39524) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoNzZ-0001W1-2Z for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 21:49:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XoNzT-00011b-2v for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 21:49:09 -0500 Received: from mail-pa0-x231.google.com ([2607:f8b0:400e:c03::231]:47525) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XoNzS-00011X-Rh for bug-gnu-emacs@gnu.org; Tue, 11 Nov 2014 21:49:03 -0500 Received: by mail-pa0-f49.google.com with SMTP id lj1so11874297pab.36 for ; Tue, 11 Nov 2014 18:49:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=references:from:to:subject:date:in-reply-to:message-id:mime-version :content-type; bh=gb0j4kp2zGpa2Pi8fN4WhDUrxdrd9vKa/c6azqM5DSs=; b=QOt0+3uJaytUbLFrIag0LkncEYOAAbBuRXNgRT2nyHdzdhzrmfmrvDh5gPxWQlqcA0 ITIPITBDU8Rm2/NN2EHO87s0O3pF4PJzZL5cyjZ0CJc7T15xy7KqFX2NnieCUF5dXlBR eSNoEDBDLa2qDkkbXJefZP2/3pirBHUpzoe0+u538jdlXDySXe7PScbi/hhjeA0d2sqz 8cKTbrmXHC2vdMOBMrwvFGGP3/w8bdaGMO9u878fldYHw+rCqAvAAuU3fJlLKAtSmpEg 0mMqwakK/2ErrmIPHHNdu7gKGoF7SqDPIATHo1lhnrluzDxADYPX60IU3Mm7vfrDfHaP BtvA== X-Received: by 10.70.129.135 with SMTP id nw7mr16752778pdb.129.1415760541856; Tue, 11 Nov 2014 18:49:01 -0800 (PST) Received: from localhost (ppp118-209-92-67.lns20.mel4.internode.on.net. [118.209.92.67]) by mx.google.com with ESMTPSA id nb3sm8180383pdb.18.2014.11.11.18.48.59 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 11 Nov 2014 18:49:00 -0800 (PST) References: <87oasd6vl4.fsf@gmail.com> <87mw7xtan2.fsf@gmail.com> From: Alexis To: bug-gnu-emacs@gnu.org Subject: Re: bug#19025: 24.4; precision error when adding two floats Date: Wed, 12 Nov 2014 13:42:48 +1100 In-reply-to: <87mw7xtan2.fsf@gmail.com> Message-ID: <87mw7x6smg.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) Jay Belanger writes: >> Isn't this an artifact of the nature of floating-point arithmetic, >> rather than an issue with Emacs per se? > > Yes, although it probably wouldn't be a bad idea to point out this > issue in the Elisp documentation. *nod* And perhaps mention Calc functions, which can work with a specified precision? (Assuming we can't simply link to e.g. http://floating-point-gui.de/ :-) ) Alexis. From unknown Sun Jun 22 03:48:40 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 10 Dec 2014 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator