From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jay K Newsgroups: gmane.lisp.guile.bugs Subject: RE: isinf and type-pun warning/error on OSF guile 1.8.7 Date: Wed, 9 Jun 2010 23:16:28 +0000 Message-ID: References: , NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1276126094 30982 80.91.229.12 (9 Jun 2010 23:28:14 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 9 Jun 2010 23:28:14 +0000 (UTC) Cc: bug-guile@gnu.org To: Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Thu Jun 10 01:28:12 2010 connect(): No such file or directory Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OMUgq-0007dk-BO for guile-bugs@m.gmane.org; Thu, 10 Jun 2010 01:28:08 +0200 Original-Received: from localhost ([127.0.0.1]:48010 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OMUgp-0002Gu-RI for guile-bugs@m.gmane.org; Wed, 09 Jun 2010 19:28:07 -0400 Original-Received: from [140.186.70.92] (port=60853 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OMUgh-0002DN-Io for bug-guile@gnu.org; Wed, 09 Jun 2010 19:28:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OMUgc-0004rp-V8 for bug-guile@gnu.org; Wed, 09 Jun 2010 19:27:59 -0400 Original-Received: from col0-omc3-s3.col0.hotmail.com ([65.55.34.141]:15372) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OMUgc-0004qa-NS for bug-guile@gnu.org; Wed, 09 Jun 2010 19:27:54 -0400 Original-Received: from COL101-W10 ([65.55.34.135]) by col0-omc3-s3.col0.hotmail.com with Microsoft SMTPSVC(6.0.3790.4675); Wed, 9 Jun 2010 16:16:28 -0700 X-Originating-IP: [131.107.0.74] Importance: Normal In-Reply-To: X-OriginalArrivalTime: 09 Jun 2010 23:16:28.0846 (UTC) FILETIME=[CA2784E0:01CB0829] X-detected-operating-system: by eggs.gnu.org: Windows 2000 SP4, XP SP1+ X-BeenThere: bug-guile@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:4634 Archived-At: Andy=2C I will try it later. =20 Often what autoconf does is: =20 echo "int main() { isinf(0)=3B }"> conftest.c gcc conftest.c =3D> if it links successfully=2C it is there. =20 =20 and then later on the "real" code uses gcc -Wmissing-prototypes -Werror=2C = boom. That's what I saw months/year+ ago on Irix at least. I think in the Irix case the protype was under an #if. I'll look around more on Tru64. Might get the admin to install newer compil= er/headers too. =20 =20 =20 You know=2C every so often I get up the gumption to try gcc/make check=2C w= hich requires a whole bunch more stuff than just gcc/make ... bdwgc=2C guil= e=2C libunistring=2C autogen=2C tcl=2C dejagnu=2C expect=2C pkg-config=2C f= fi....kind of annoying=2C oh well. It looks like I succeeded this time=2C p= hew.. =20 =20 Thanks=2C later=2C - Jay ---------------------------------------- > From: wingo@pobox.com > To: jay.krell@cornell.edu > CC: bug-guile@gnu.org > Subject: Re: isinf and type-pun warning/error on OSF guile 1.8.7 > Date: Thu=2C 10 Jun 2010 00:28:00 +0200 > > Hi Jay=2C > > On Wed 09 Jun 2010 17:43=2C Jay K writes: > >> libtool: compile: gcc -DHAVE_CONFIG_H -I.. -I/home/jayk/src/guile-1.8.7 = -I.. -mieee -mieee -D_REENTRANT -pthread -g -O2 -Wall -Wmissing-prototypes = -Werror -MT libguile_la-numbers.lo -MD -MP -MF .deps/libguile_la-numbers.Tp= o -c /home/jayk/src/guile-1.8.7/libguile/numbers.c -DPIC -o .libs/libguile_= la-numbers.o >> cc1: warnings being treated as errors >> /home/jayk/src/guile-1.8.7/libguile/numbers.c: In function 'xisinf': >> /home/jayk/src/guile-1.8.7/libguile/numbers.c:144: error: implicit >> declaration of function 'isinf' > >> I couldn't find isinf in any header. > > This call only occurs if configure detected support `isinf'=2C so surely > it is there? Can you check again? Barring that can you send a > config.log=2C please. > >> /home/jayk/src/guile-1.8.7/libguile/numbers.c: In function 'guile_ieee_i= nit': >> /home/jayk/src/guile-1.8.7/libguile/numbers.c:623: error: dereferencing = type-punned pointer will break strict-aliasing rules >> /home/jayk/src/guile-1.8.7/libguile/numbers.c:654: error: dereferencing = type-punned pointer will break strict-aliasing rules > > Does replacing that DINIFINITY block with the following help? > > /* OSF */ > extern unsigned int DINFINITY[2]=3B > union > { > double d=3B > int i[2]=3B > } alias=3B > alias.i[0] =3D DINFINITY[0]=3B > alias.i[1] =3D DINFINITY[1]=3B > guile_Inf =3D alias.d=3B > > Likewise for DQNAN: > > { > /* OSF */ > extern unsigned int DQNAN[2]=3B > union > { > double d=3B > int i[2]=3B > } alias=3B > alias.i[0] =3D DQNAN[0]=3B > alias.i[1] =3D DQNAN[1]=3B > guile_NaN =3D alias.d=3B > } > >> I recall seeing the same problem on Irix=2C where autoconf does a link c= heck >> and compiles without -Wmissing-prototype so it passes=2C because the fun= ction >> does exist somewhere. Autoconf checks need to more closely resemble >> how later compilation will occur. > > How does that work though -- does isinf have no header/declaration? > >> /home/jayk/src/guile-1.8.7/test-suite/standalone/test-conversion.c:859: >> error: dereferencing type-punned pointer will break strict-aliasing >> rules make[4]: *** [test_conversion-test-conversion.o] Error 1 > > We can copy the above solution if it works. Let us know! > > Andy > -- > http://wingolog.org/ =