To: "Gerrit @ cygwin" <[EMAIL PROTECTED]> cc: Mathias Wagner/HBG/SC/[EMAIL PROTECTED] Subject: Re: GCC 3.3.1 problem with printf %Lg %Lg and -m128bit-long-double compile option Classification:
> On Thu, 27 May 2004, Gerrit P. Haase wrote: > > > Hallo mathias, > > > > > GCC 3.3.1 has a problem when printing multiple long double variables using > > > printf and the -m128bit-long-double compile option on a Pentium-based > > > machine. > > > > Seems to be a bug in gcc, for bug reporting instructions, please see: > > http://gcc.gnu.org/bugs.html. > > No disrespect intended Mr. GCC maintainer, but I'm pretty sure that is > expected behavior. See "info gcc" in the -m128bit-long-double section: > > *Warning:* if you override the default value for your target ABI, > the structures and arrays containing `long double' will change > their size as well as function calling convention for function > taking `long double' will be modified. Hence they will not be > binary compatible with arrays or structures in code compiled > without that switch. > > Cygwin/newlib would need to be recompiled with this switch for proper > printf operation. Why are you trying to use this switch, Mathias? Thanks for these infos to both of you! Meanwhile I have had some help from another colleague here at Philips and he found out that the -m96bit-long-double compile option works fine. Note that 96 bit is what a long double takes. This makes sense in conjunction with what Brian said: The alignment of the parameters handed over to a function is changed when using -m128bit-long-double, and hence all functions affected must be recompiled - so presumably cygwin itself. There was no particular reason for using -m128bit-long-double other than that I have always used it, and I will switch to -m96bit-long-double. But perhaps one could insert somewhere in gcc a warning when using such a combination of compile options. I know it is in the documentation somewhere, but compiler warnings are much more visible... :-) Cheers Mathias -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/