This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/34720] ICE in real_to_decimal, at real.c:1656
- From: "tgall dot foo at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 23 Jan 2008 21:31:37 -0000
- Subject: [Bug c/34720] ICE in real_to_decimal, at real.c:1656
- References: <bug-34720-15597@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #5 from tgall dot foo at gmail dot com 2008-01-23 21:31 -------
so the call path involved here is from gcc/c-cppbuiltin.c
builtin_define_with_hex_fp_value
which is calling real_to_decimal and its in that function we're running into
problems.
The string rep of the real is : 0x0.ffffffp128 aka __FLT_MAX_10_EXP__
I am able to do a real_to_hexadecimal successfully and get : 0x0.ffp+128
Inside of real_to_decimal once we get down to digit=rtd_divmod(&r, &pten) we're
in obvious trouble as digit comes back with a value of:
7378697629483820646 which in hex comes out to be all 6's or a pattern of
repeating nibbles of "0110".
This is making my head hurt.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34720