This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] PR libstdc++/13045 / C++ demangler, floating values and function pointer type return type postfix fix.
Geert Bosch <bosch@gnat.com> writes:
| On Nov 24, 2003, at 16:30, Ian Lance Taylor wrote:
| > It's perhaps worth noting that the libiberty demangler currently
| > follows a much simpler approach than the C++ demangler, which is to
| > not attempt to interpret floating constants at all. This is fully
| > compliant with non-IEEE targets, and produces demanglings like
| > void f<1>(A<(1) + (((int)(-((float)3f800000))))>)
|
| Doesn't (float) 0x3f800000 produce the floating point number
| 1065353216.0
| (which has memory representation 0x4e7e0000) instead of 1.0 as you
| expect?
That also makes other unspoken assumptions. I'm getting more and of
the opinion that C99 hex floating notation (with canonical form) might
a better alternative.
-- Gaby