[Bug bootstrap/60688] New: ICE in real_to_decimal_for_mode
rth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Mar 27 16:35:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60688
Bug ID: 60688
Summary: ICE in real_to_decimal_for_mode
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: major
Priority: P3
Component: bootstrap
Assignee: unassigned at gcc dot gnu.org
Reporter: rth at gcc dot gnu.org
Building stage1 libstdc++:
/home/rth/work/gcc/bld/./gcc/xgcc -shared-libgcc -B/home/rth/work/gcc/bld/./gcc
-nostdinc++
-L/home/rth/work/gcc/bld/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src
-L/home/rth/work/gcc/bld/armv7l-unknown-linux-gnueabihf/libstdc++-v3/src/.libs
-L/home/rth/work/gcc/bld/armv7l-unknown-linux-gnueabihf/libstdc++-v3/libsupc++/.libs
-B/home/rth/work/gcc/run/armv7l-unknown-linux-gnueabihf/bin/
-B/home/rth/work/gcc/run/armv7l-unknown-linux-gnueabihf/lib/ -isystem
/home/rth/work/gcc/run/armv7l-unknown-linux-gnueabihf/include -isystem
/home/rth/work/gcc/run/armv7l-unknown-linux-gnueabihf/sys-include
-I/home/rth/work/gcc/git-master/libstdc++-v3/../libgcc
-I/home/rth/work/gcc/bld/armv7l-unknown-linux-gnueabihf/libstdc++-v3/include/armv7l-unknown-linux-gnueabihf
-I/home/rth/work/gcc/bld/armv7l-unknown-linux-gnueabihf/libstdc++-v3/include
-I/home/rth/work/gcc/git-master/libstdc++-v3/libsupc++ -D_GLIBCXX_SHARED
-fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi
-fdiagnostics-show-location=once -ffunction-sections -fdata-sections
-frandom-seed=ios.lo -g -O2 -D_GNU_SOURCE -c
../../../../../git-master/libstdc++-v3/src/c++98/ios.cc -fPIC -DPIC
-D_GLIBCXX_SHARED -o ios.o
In file included from
../../../../../git-master/libstdc++-v3/src/c++98/ios.cc:30:0:
/home/rth/work/gcc/bld/armv7l-unknown-linux-gnueabihf/libstdc++-v3/include/limits:1558:7:
internal compiler error: in real_to_decimal_for_mode, at real.c:1799
min() _GLIBCXX_USE_NOEXCEPT { return __FLT_MIN__; }
^
0x9c43af real_to_decimal_for_mode(char*, real_value const*, unsigned int,
unsigned int, int, machine_mode)
../../git-master/gcc/real.c:1799
0x4bec7f lazy_hex_fp_value
../../git-master/gcc/c-family/c-cppbuiltin.c:1149
(gdb) where
#0 fancy_abort (file=0x13d11d8 "../../git-master/gcc/real.c", line=1799,
function=0x13d1740 <real_to_decimal_for_mode(char*, real_value const*,
unsigned int, unsigned int, int, machine_mode)::__FUNCTION__>
"real_to_decimal_for_mode") at ../../git-master/gcc/diagnostic.c:1190
#1 0x009c43b0 in real_to_decimal_for_mode (
str=0x7effeae4 "1.1754943508222875e-38", r_orig=0x7effec24, buf_size=64,
digits=0, crop_trailing_zeros=0, mode=SFmode)
at ../../git-master/gcc/real.c:1799
#2 0x004bec80 in lazy_hex_fp_value (pfile=0x17b7bc0, node=0x76d9cb38)
at ../../git-master/gcc/c-family/c-cppbuiltin.c:1149
#3 0x013140c0 in enter_macro_context (pfile=0x17b7bc0, node=0x76d9cb38,
result=0x17e7790, location=4858974) at ../../git-master/libcpp/macro.c:1052
#4 0x013166bc in cpp_get_token_1 (pfile=0x17b7bc0, location=0x7effeda4)
at ../../git-master/libcpp/macro.c:2439
#5 0x01316878 in cpp_get_token_with_location (pfile=0x17b7bc0, loc=0x7effeda4)
at ../../git-master/libcpp/macro.c:2541
#6 0x004c895c in c_lex_with_flags (value=0x7effeda8, loc=0x7effeda4,
cpp_flags=0x7effed9e "\001", lex_flags=2)
at ../../git-master/gcc/c-family/c-lex.c:302
#7 0x002d9ce4 in cp_lexer_get_preprocessor_token (lexer=0x76da4768,
token=0x7effed9c) at ../../git-master/gcc/cp/parser.c:761
#8 0x002d98c8 in cp_lexer_new_main () at ../../git-master/gcc/cp/parser.c:641
#9 0x002ddb20 in cp_parser_new () at ../../git-master/gcc/cp/parser.c:3407
#10 0x0031dca4 in c_parse_file () at ../../git-master/gcc/cp/parser.c:31650
#11 0x004d30a8 in c_common_parse_file ()
at ../../git-master/gcc/c-family/c-opts.c:1061
#12 0x00ab35e4 in compile_file () at ../../git-master/gcc/toplev.c:548
#13 0x00ab65e4 in do_compile () at ../../git-master/gcc/toplev.c:1914
#14 0x00ab67d0 in toplev_main (argc=59, argv=0x7effef84)
at ../../git-master/gcc/toplev.c:1990
#15 0x012ce4c0 in main (argc=59, argv=0x7effef84)
at ../../git-master/gcc/main.c:36
(gdb) up
#1 0x009c43b0 in real_to_decimal_for_mode (
str=0x7effeae4 "1.1754943508222875e-38", r_orig=0x7effec24, buf_size=64,
digits=0, crop_trailing_zeros=0, mode=SFmode)
at ../../git-master/gcc/real.c:1799
1799 gcc_assert (real_identical (&r, r_orig));
(gdb) p r
$1 = {cl = 0, decimal = 0, sign = 0, signalling = 0, canonical = 0, uexp = 0,
sig = {0, 0, 0, 0, 0}}
(gdb) p *r_orig
$3 = {cl = 1, decimal = 0, sign = 0, signalling = 0, canonical = 0,
uexp = 67108739, sig = {0, 0, 0, 0, 2147483648}}
I don't have time to backtrack this further just now. Saving state.
More information about the Gcc-bugs
mailing list