This is the mail archive of the
mailing list for the libstdc++ project.
Re: Irix6 long doubles implemented wrong? (27_io/ostream_inserter_arith)
- From: Rainer Orth <ro at TechFak dot Uni-Bielefeld dot DE>
- To: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Cc: gcc-bugs at gcc dot gnu dot org, gcc at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org, oldham at codesourcery dot com
- Date: Mon, 16 Dec 2002 18:09:27 +0100 (MET)
- Subject: Re: Irix6 long doubles implemented wrong? (27_io/ostream_inserter_arith)
- References: <200212142145.QAA25890@caip.rutgers.edu>
Kaveh R. Ghazi writes:
> As you can see, gcc's sizeof (long double) doesn't agree with that
> from the system compiler and I would assume therefore that gcc also
> disagrees with libc's notion of long double. This means that the %Lf
> specifier is hosed and cannot be used from gcc on irix6.
> I believe this is the cause of the 27_io/ostream_inserter_arith.cc
> failures we've been getting on irix6.
> See also http://gcc.gnu.org/ml/gcc-bugs/2001-08/msg00088.html which
> apears to be the same issue.
It is. The following comment from config/mips/abi64.h (lost when the
definitions from that file were merged into mips.h) still applies:
/* ??? Unimplemented stuff follows. */
/* ??? Add support for 16 byte/128 bit long doubles here when
mips_abi != ABI32. */
> Does anyone have any thoughts on this? (Or better yet a fix?)
I didn't have much time to work on gcc lately, but David Edelsohn's support
or 128-bit long doubles in AIX (implemented as a pair of 64-bit doubles)
applies to IRIX 6 long doubles as well, since both platforms use the same
format as documented in math(3M).