GNU bug report logs - #36338
guile-2.2.5 fails to build with -ffast-math

Previous Next

Package: guile;

Reported by: Cyprien Nicolas <cyprien <at> nicolas.tf>

Date: Sun, 23 Jun 2019 09:01:02 UTC

Severity: normal

Tags: notabug, wontfix

Done: Mark H Weaver <mhw <at> netris.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 36338 in the body.
You can then email your comments to 36338 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guile <at> gnu.org:
bug#36338; Package guile. (Sun, 23 Jun 2019 09:01:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Cyprien Nicolas <cyprien <at> nicolas.tf>:
New bug report received and forwarded. Copy sent to bug-guile <at> gnu.org. (Sun, 23 Jun 2019 09:01:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Cyprien Nicolas <cyprien <at> nicolas.tf>
To: bug-guile <at> gnu.org
Subject: guile-2.2.5 fails to build with -ffast-math
Date: Sun, 23 Jun 2019 11:00:23 +0200
Hello,

I apologize if the issue was already reported, but I didn't find a
previous record.

At Gentoo, users build packages themselves, and have the freedom to
choose the CFLAGS they want.

We had several reports [1,2] from users unable to build guile with
-Ofast. Adding -fno-fast-math make the build pass.

Compiling with -O0 -ffast-math also fails.

I'm not sure if you can solve this. On our side, we will append
-fno-fast-math to compiler's flags.



GUILE_AUTO_COMPILE=0			\
../meta/build-env				\
guild compile --target="x86_64-pc-linux-gnu"                \
           -O1              \
  -L "/var/tmp/portage/dev-scheme/guile-2.2.5/work/guile-2.2.5/module"
                       \
  -L
"/var/tmp/portage/dev-scheme/guile-2.2.5/work/guile-2.2.5/guile-readline"	
	\
  -o "language/cps/types.go" "../module/language/cps/types.scm"
make[2]: *** [Makefile:1931: language/cps/types.go] Aborted
make[2]: Leaving directory
'/var/tmp/portage/dev-scheme/guile-2.2.5/work/guile-2.2.5/bootstrap'
make[1]: *** [Makefile:1857: all-recursive] Error 1
make[1]: Leaving directory
'/var/tmp/portage/dev-scheme/guile-2.2.5/work/guile-2.2.5'
make: *** [Makefile:1743: all] Error 2



omega /var/tmp/portage/dev-scheme/guile-2.2.5/work/guile-2.2.5 #
./build-aux/config.guess
x86_64-pc-linux-gnu


omega /var/tmp/portage/dev-scheme/guile-2.2.5/work/guile-2.2.5 #
./config.status --config
'--prefix=/usr' '--build=x86_64-pc-linux-gnu'
'--host=x86_64-pc-linux-gnu' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc'
'--localstatedir=/var/lib' '--disable-dependency-tracking'
'--disable-silent-rules' '--docdir=/usr/share/doc/guile-2.2.5'
'--htmldir=/usr/share/doc/guile-2.2.5/html' '--with-sysroot=/'
'--libdir=/usr/lib64' '--program-suffix=-2.2'
'--infodir=/usr/share/info/guile-2.2' '--disable-error-on-warning'
'--disable-rpath' '--disable-static' '--enable-posix'
'--without-libgmp-prefix' '--without-libiconv-prefix'
'--without-libintl-prefix' '--without-libltdl-prefix'
'--without-libreadline-prefix' '--without-libunistring-prefix'
'--disable-guile-debug' '--disable-debug-malloc' '--enable-deprecated'
'--enable-networking' '--disable-nls' '--enable-regex' '--with-threads'
'build_alias=x86_64-pc-linux-gnu' 'host_alias=x86_64-pc-linux-gnu'
'CFLAGS=-Ofast -pipe' 'LDFLAGS=-Wl,-O1 -Wl,--as-needed' 'CPPFLAGS='
'PKG_CONFIG_PATH=/usr/lib64/pkgconfig'

1. in 2003 https://forums.gentoo.org/viewtopic-t-72916-start-0.html
2. in 2016 https://bugs.gentoo.org/598986

Thanks,

Cyprien




Information forwarded to bug-guile <at> gnu.org:
bug#36338; Package guile. (Thu, 27 Jun 2019 03:04:02 GMT) Full text and rfc822 format available.

Message #8 received at 36338 <at> debbugs.gnu.org (full text, mbox):

From: Mark H Weaver <mhw <at> netris.org>
To: Cyprien Nicolas <cyprien <at> nicolas.tf>
Cc: 36338 <at> debbugs.gnu.org
Subject: Re: bug#36338: guile-2.2.5 fails to build with -ffast-math
Date: Wed, 26 Jun 2019 22:57:57 -0400
tags 36338 + notabug wontfix
close 36338
thanks

Hi Cyprien,

Cyprien Nicolas <cyprien <at> nicolas.tf> writes:

> I apologize if the issue was already reported, but I didn't find a
> previous record.
>
> At Gentoo, users build packages themselves, and have the freedom to
> choose the CFLAGS they want.
>
> We had several reports [1,2] from users unable to build guile with
> -Ofast. Adding -fno-fast-math make the build pass.
>
> Compiling with -O0 -ffast-math also fails.

Guile generally assumes that the underlying C implementation will be
standards compliant.  -Ofast, -ffast-math and related options disregard
standards compliance.  Among other things, -ffast-math implies
-ffinite-math-only, which generates code that assumes that all floating
point values are finite.  However, there's code in Guile's compiler that
uses +inf.0 and -inf.0 and expects that they will behave as specified in
IEEE-754.

So, in summary, I would say that Guile does not support being compiled
with -Ofast, -ffast-math, or many of the options that -ffast-math
implies.

> I'm not sure if you can solve this. On our side, we will append
> -fno-fast-math to compiler's flags.

I think this is the right approach.

     Thanks,
       Mark




Added tag(s) notabug and wontfix. Request was from Mark H Weaver <mhw <at> netris.org> to control <at> debbugs.gnu.org. (Thu, 27 Jun 2019 03:15:01 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 36338 <at> debbugs.gnu.org and Cyprien Nicolas <cyprien <at> nicolas.tf> Request was from Mark H Weaver <mhw <at> netris.org> to control <at> debbugs.gnu.org. (Thu, 27 Jun 2019 03:15:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-guile <at> gnu.org:
bug#36338; Package guile. (Sun, 07 Jul 2019 13:04:02 GMT) Full text and rfc822 format available.

Message #15 received at 36338 <at> debbugs.gnu.org (full text, mbox):

From: Cyprien Nicolas <cyprien <at> nicolas.tf>
To: Mark H Weaver <mhw <at> netris.org>
Cc: 36338 <at> debbugs.gnu.org
Subject: Re: bug#36338: guile-2.2.5 fails to build with -ffast-math
Date: Sun, 7 Jul 2019 15:03:11 +0200
On 27/06/2019 04:57, Mark H Weaver wrote:
> 
> Guile generally assumes that the underlying C implementation will be
> standards compliant.  -Ofast, -ffast-math and related options disregard
> standards compliance.  Among other things, -ffast-math implies
> -ffinite-math-only, which generates code that assumes that all floating
> point values are finite.  However, there's code in Guile's compiler that
> uses +inf.0 and -inf.0 and expects that they will behave as specified in
> IEEE-754.
> 
> So, in summary, I would say that Guile does not support being compiled
> with -Ofast, -ffast-math, or many of the options that -ffast-math
> implies.

Thank you for the clear and detailed explanation. It makes sense.

Cyprien




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 05 Aug 2019 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 265 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.