This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
GC (?) problems in cp/call.c - ICE with --enable-checking
- To: gcc-bugs at gcc dot gnu dot org
- Subject: GC (?) problems in cp/call.c - ICE with --enable-checking
- From: Andreas Jaeger <aj at suse dot de>
- Date: 25 Oct 1999 15:52:04 +0200
Trying to build the current CVS mainline version with enable checking
on i686, Linux 2.2.13, glibc 2.1.2, I get:
make[2]: Entering directory `/usr/src/build-cc/gcc'
/usr/src/build-cc/gcc/xgcc -B/usr/src/build-cc/gcc/ -B/opt/gcc-2.96/i686-pc-linux-gnu/bin/ -I/opt/gcc-2.96/i686-pc-linux-gnu/include -O2 -DIN_GCC -g -O2 -I./include -fPIC -g1 -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -g -O2 -I. -I../../cvs/gcc/gcc -I../../cvs/gcc/gcc/config -I../../cvs/gcc/gcc/../include \
-c ../../cvs/gcc/gcc/cp/tinfo.cc
In file included from ../../cvs/gcc/gcc/cp/tinfo.cc:31:
../../cvs/gcc/gcc/cp/tinfo.h: In method `__si_type_info::__si_type_info (const char *, const __user_type_info &)':
../../cvs/gcc/gcc/cp/tinfo.h:154: Tree check: expected tree_list, have modop_expr
../../cvs/gcc/gcc/cp/tinfo.h:154: Internal compiler error in `build_call', at ../cvs/gcc/gcc/cp/call.c:395
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/faq.html#bugreport> for instructions.
make[2]: *** [tinfo.o] Error 1
make[2]: Leaving directory `/usr/src/build-cc/gcc'
make[1]: *** [libgcc2.a] Error 1
-v shows:
/usr/src/build-cc/gcc/cc1plus tinfo.ii -quiet -dumpbase tinfo.cc -g -g1 -g -O2 -O2 -O2 -version -fPIC -o tinfo.s
GNU C++ version 2.96 19991025 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 2.96 19991025 (experimental).
In file included from ../../cvs/gcc/gcc/cp/tinfo.cc:31:
../../cvs/gcc/gcc/cp/tinfo.h: In method `__si_type_info::__si_type_info (const char *, const __user_type_info &)':
../../cvs/gcc/gcc/cp/tinfo.h:154: Tree check: expected tree_list, have modop_expr
../../cvs/gcc/gcc/cp/tinfo.h:154: Internal compiler error in `build_call', at ../cvs/gcc/gcc/cp/call.c:395
Please submit a full bug report.
Running under gdb shows that the parameter parms to build_call has
been garbage collected:
Breakpoint 2, fancy_abort (file=0x84a5dc0 "../../../cvs/gcc/gcc/cp/call.c",
line=395, function=0x84a5f05 "build_call") at ../../cvs/gcc/gcc/rtl.c:1146
1146 if (function == NULL)
(gdb) p function
$1 = 0x84a5f05 "build_call"
(gdb) bt
#0 fancy_abort (file=0x84a5dc0 "../../../cvs/gcc/gcc/cp/call.c", line=395,
function=0x84a5f05 "build_call") at ../../cvs/gcc/gcc/rtl.c:1146
#1 0x805b024 in tree_check_failed () at ../../cvs/gcc/gcc/tree.c:5156
#2 0x839799b in build_call (function=0x40160040, result_type=0x40119b80,
parms=0x4015b960) at ../../../cvs/gcc/gcc/cp/call.c:395
#3 0x83a081d in build_over_call (cand=0x84fba94, args=0x4015b8e0, flags=11)
at ../../../cvs/gcc/gcc/cp/call.c:4166
#4 0x83a116b in build_new_method_call (instance=0x4015b8a0, name=0x4001b580,
args=0x4015b860, basetype_path=0x40152cc0, flags=11)
at ../../../cvs/gcc/gcc/cp/call.c:4357
#5 0x8397d9f in build_method_call (instance=0x4015b8a0, name=0x4001b580,
parms=0x4015b860, basetype_path=0x40152cc0, flags=11)
at ../../../cvs/gcc/gcc/cp/call.c:502
#6 0x8397734 in build_scoped_method_call (exp=0x4015b2c0,
basetype=0x40152cc0, name=0x4001b580, parms=0x4015b860)
at ../../../cvs/gcc/gcc/cp/call.c:317
#7 0x843730e in expand_cleanup_for_base (binfo=0x40152cc0, flag=0x0)
at ../../../cvs/gcc/gcc/cp/init.c:695
#8 0x8436df6 in emit_base_init (t=0x40155c80)
at ../../../cvs/gcc/gcc/cp/init.c:545
#9 0x844e87f in setup_vtbl_ptr () at ../../../cvs/gcc/gcc/cp/semantics.c:1199
#10 0x84169e2 in yyparse () at parse.y:1624
#11 0x804ba06 in compile_file (name=0xbffff9a7 "tinfo.ii")
at ../../cvs/gcc/gcc/toplev.c:3200
#12 0x804f549 in main (argc=15, argv=0xbffff804)
at ../../cvs/gcc/gcc/toplev.c:5555
(gdb) p parms
$4 = 0x4015b960
(gdb) p *parms
$8 = {common = {chain = 0xa5a5a5a5, type = 0xa5a5a5a5, code = 165,
side_effects_flag = 1, constant_flag = 0, permanent_flag = 1,
addressable_flag = 0, volatile_flag = 0, readonly_flag = 1,
unsigned_flag = 0, asm_written_flag = 1, used_flag = 1, raises_flag = 0,
static_flag = 1, public_flag = 0, private_flag = 0, protected_flag = 1,
lang_flag_0 = 0, lang_flag_1 = 1, lang_flag_2 = 1, lang_flag_3 = 0,
lang_flag_4 = 1, lang_flag_5 = 0, lang_flag_6 = 0}, int_cst = {
common = '¥' <repeats 12 times>, rtl = 0xa5a5a5a5,
int_cst_low = -1515870811, int_cst_high = -1515870811}, real_cst = {
common = '¥' <repeats 12 times>, rtl = 0xa5a5a5a5, real_cst = {r = {
-1515870811, -1515870811, -1515870811}}}, string = {
common = '¥' <repeats 12 times>, rtl = 0xa5a5a5a5, length = -1515870811,
pointer = 0xa5a5a5a5 ""}, complex = {common = '¥' <repeats 12 times>,
rtl = 0xa5a5a5a5, real = 0xa5a5a5a5, imag = 0xa5a5a5a5}, identifier = {
common = '¥' <repeats 12 times>, length = -1515870811,
pointer = 0xa5a5a5a5 ""}, decl = {common = '¥' <repeats 12 times>,
filename = 0xa5a5a5a5 "", linenum = -1515870811, uid = 2779096485,
size = 0xa5a5a5a5, mode = 165, external_flag = 1, nonlocal_flag = 0,
regdecl_flag = 1, inline_flag = 0, bit_field_flag = 0, virtual_flag = 1,
ignored_flag = 0, abstract_flag = 1, in_system_header_flag = 1,
common_flag = 0, defer_output = 1, transparent_union = 0,
static_ctor_flag = 0, static_dtor_flag = 1, artificial_flag = 0,
weak_flag = 1, lang_flag_0 = 1, lang_flag_1 = 0, lang_flag_2 = 1,
lang_flag_3 = 0, lang_flag_4 = 0, lang_flag_5 = 1, lang_flag_6 = 0,
lang_flag_7 = 1, non_addr_const_p = 1,
no_instrument_function_entry_exit = 0, no_check_memory_usage = 1,
comdat_flag = 0, frame_size = {i = -1515870811, u = 2779096485, f = {
code = 10855845, bclass = 165}}, name = 0xa5a5a5a5,
context = 0xa5a5a5a5, arguments = 0xa5a5a5a5, result = 0xa5a5a5a5,
initial = 0xa5a5a5a5, abstract_origin = 0xa5a5a5a5, assembler_name = 0x0,
section_name = 0x0, machine_attributes = 0x404, rtl = 0x4,
live_range_rtl = 0x40152d40, saved_insns = {f = 0x0, r = 0x0, i = 0},
vindex = 0x4015ad80, pointer_alias_set = 1075142272,
lang_specific = 0x4015b9a0}, type = {common = '¥' <repeats 12 times>,
values = 0xa5a5a5a5, size = 0xa5a5a5a5, size_unit = 0xa5a5a5a5,
attributes = 0xa5a5a5a5, uid = 2779096485, precision = 165 '¥',
mode = 165, string_flag = 1, no_force_blk_flag = 0,
needs_constructing_flag = 1, transparent_union_flag = 0, packed_flag = 0,
restrict_flag = 1, lang_flag_0 = 0, lang_flag_1 = 1, lang_flag_2 = 1,
lang_flag_3 = 0, lang_flag_4 = 1, lang_flag_5 = 0, lang_flag_6 = 0,
align = 2779096485, pointer_to = 0xa5a5a5a5, reference_to = 0xa5a5a5a5,
symtab = {address = -1515870811, pointer = 0xa5a5a5a5 ""},
name = 0xa5a5a5a5, minval = 0xa5a5a5a5, maxval = 0xa5a5a5a5,
next_variant = 0x0, main_variant = 0x0, binfo = 0x404,
noncopied_parts = 0x4, context = 0x40152d40, obstack = 0x0,
alias_set = 1075162496, lang_specific = 0x40155e80}, list = {
common = '¥' <repeats 12 times>, purpose = 0xa5a5a5a5,
value = 0xa5a5a5a5}, vec = {common = '¥' <repeats 12 times>,
length = -1515870811, a = {0xa5a5a5a5}}, exp = {
common = '¥' <repeats 12 times>, complexity = -1515870811, operands = {
0xa5a5a5a5}}, block = {common = '¥' <repeats 12 times>,
handler_block_flag = 1, abstract_flag = 0, live_range_flag = 1,
live_range_var_flag = 0, vars = 0xa5a5a5a5, type_tags = 0xa5a5a5a5,
subblocks = 0xa5a5a5a5, supercontext = 0xa5a5a5a5,
abstract_origin = 0xa5a5a5a5, end_note = 0xa5a5a5a5,
live_range_start = -1515870811, live_range_end = -1515870811}}
Andreas
--
Andreas Jaeger
SuSE Linux Labs aj@suse.de
private aj@arthur.rhein-neckar.de