From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31672 invoked by alias); 23 Sep 2006 15:19:54 -0000 Received: (qmail 31653 invoked by uid 48); 23 Sep 2006 15:19:46 -0000 Date: Sat, 23 Sep 2006 15:19:00 -0000 Message-ID: <20060923151946.31652.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug c++/29080] [4.0/4.1/4.2 Regression] Multiple-inheritance with template method function code triggers "internal compiler error: in build_base_path, at cp/class.c:273" In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "steven at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2006-09/txt/msg02230.txt.bz2 List-Id: ------- Comment #4 from steven at gcc dot gnu dot org 2006-09-23 15:19 ------- Breakpoint 1, fancy_abort (file=0xde98b0 "../../trunk/gcc/cp/class.c", line=272, function=0xde98a0 "build_base_path") at ../../trunk/gcc/diagnostic.c:642 642 internal_error ("in %s, at %s:%d", function, trim_filename (file), line); (gdb) up #1 0x00000000004c328a in build_base_path (code=PLUS_EXPR, expr=0x2aaaaaf85340, binfo=0x2aaaaaac19a0, nonnull=1) at ../../trunk/gcc/cp/class.c:269 269 gcc_assert ((code == MINUS_EXPR (gdb) l 264 265 probe = TYPE_MAIN_VARIANT (TREE_TYPE (expr)); 266 if (want_pointer) 267 probe = TYPE_MAIN_VARIANT (TREE_TYPE (probe)); 268 269 gcc_assert ((code == MINUS_EXPR 270 && SAME_BINFO_TYPE_P (BINFO_TYPE (binfo), probe)) 271 || (code == PLUS_EXPR 272 && SAME_BINFO_TYPE_P (BINFO_TYPE (d_binfo), probe))); 273 (gdb) p code $1 = PLUS_EXPR (gdb) (gdb) p probe $2 = (tree) 0x2aaaaaf7db00 (gdb) p debug_tree(probe) constant invariant 16> unit size constant invariant 2> align 8 symtab 0 alias set -1 fields nonlocal decl_4 VOID file t.C line 7 align 1 context > X() X(constX&) this=(X&) n_parents=2 use_template=0 interface-unknown pointer_to_this chain > $3 = void (gdb) p debug_tree(d_binfo) unit size align 8 symtab 0 alias set -1 fields nonlocal decl_4 VOID file t.C line 5 align 1 context > X() X(constX&) this=(X&) n_parents=1 use_template=0 interface-unknown chain > private> $4 = void (gdb) p d_binfo->common.type $5 = (tree) 0x2aaaaaf7d840 (gdb) p debug_tree(d_binfo->common.type) constant invariant 8> unit size constant invariant 1> align 8 symtab 0 alias set -1 fields nonlocal decl_4 VOID file t.C line 5 align 1 context > X() X(constX&) this=(X&) n_parents=1 use_template=0 interface-unknown chain > $6 = void (gdb) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29080