From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15105 invoked by alias); 24 Oct 2010 03:48:53 -0000 Received: (qmail 15096 invoked by uid 22791); 24 Oct 2010 03:48:53 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 24 Oct 2010 03:48:49 +0000 From: "david.kirkby at onetel dot net" To: gcc-bugs@gcc.gnu.org Subject: [Bug c/46155] New: Bug with generation of float.h header file on AIX X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: david.kirkby at onetel dot net X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Date: Sun, 24 Oct 2010 03:48:00 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-10/txt/msg02003.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46155 Summary: Bug with generation of float.h header file on AIX Product: gcc Version: 4.2.4 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassigned@gcc.gnu.org ReportedBy: david.kirkby@onetel.net Hi, I first posted this on the gcc-help mailing list, and was advised by Ian Lance Taylor to post this as a bug. On an IBM server running AIX 5.3, 'fprnd_t' is clearly defined in the IBM system header file /usr/include/float.h -bash-4.1$ grep fprnd_t /usr/include/float.h typedef unsigned short fprnd_t; fprnd_t fp_read_rnd(); fprnd_t fp_swap_rnd(); fprnd_t fp_read_rnd(void); fprnd_t fp_swap_rnd(fprnd_t rnd); as an unsigned short. But when gcc is built, it creates several files called 'float.h', but all of these lack any references at all to fprnd_t -bash-4.1$ find /opt/pware -name float.h /opt/pware/include/c++/4.2.4/tr1/float.h /opt/pware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.4/include/float.h /opt/pware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.4/install-tools/include/float.h -bash-4.1$ grep fprnd_t /opt/pware/include/c++/4.2.4/tr1/float.h -bash-4.1$ grep fprnd_t /opt/pware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.4/include/float.h -bash-4.1$ grep fprnd_t /opt/pware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.4/install-tools/include/float.h This is from a gcc 4.2.4 binary downloaded from pware. I've run the 'mkheaders' file, but that does not solve the problem. Clearly this problem has existed for some time, as it has caused problems with the GNU Scientific library for years. (just Google gsl aix). I found a reference going back as far as 2002, but here's a more recent (and hopefully useful) post on the matter. http://www.mail-archive.com/bug-gsl@gnu.org/msg01301.html As you can see, I'm trying to work around this in gsl with autoconf in GSL, but ultimately it seems to be a GCC bug and not a GSL bug, so should be fixed in GCC and not in GSL. I'm attaching a copy of the IBM system header file: /usr/include/float.h as well as the float.h from /opt/pware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.4/include/float.h If gcc developers do not have easy access to an AIX system, I can provide access to AIX hardware. Dave