From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19606 invoked by alias); 2 Jun 2006 22:39:21 -0000 Received: (qmail 19379 invoked by uid 48); 2 Jun 2006 22:38:33 -0000 Date: Fri, 02 Jun 2006 22:39:00 -0000 Message-ID: <20060602223833.19378.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug c++/27177] [4.0/4.1/4.2 Regression] ICE in build_simple_base_path, at cp/class.c:474 In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "reichelt 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-06/txt/msg00148.txt.bz2 List-Id: ------- Comment #4 from reichelt at gcc dot gnu dot org 2006-06-02 22:38 ------- Here's an even shorter testcase: ============================================= struct X {}; struct Y : virtual X {}; struct Z : virtual X {}; struct A : Y, Z {}; struct B : A { static const int i = sizeof((Z*)(B*)0); }; ============================================= A simpler testcase was fixed (or maybe only papered over) in GCC 4.0.3: ============================================= struct A { virtual ~A(); }; struct B : A { static const int i = sizeof((A*)(B*)0); }; ============================================= A slight modification results in a testcase that crashes with a segfault since GCC 3.2: ============================================= struct A {}; struct B : virtual A { static const int i = sizeof((A*)(B*)0); }; ============================================= -- reichelt at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |reichelt at gcc dot gnu dot | |org Keywords| |monitored http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27177