From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29989 invoked by alias); 2 May 2007 19:02:42 -0000 Received: (qmail 29916 invoked by alias); 2 May 2007 19:02:29 -0000 Date: Wed, 02 May 2007 19:02:00 -0000 Message-ID: <20070502190229.29915.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug c++/27177] [4.0/4.1/4.2/4.3 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: "mark at codesourcery dot com" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2007-05/txt/msg00189.txt.bz2 ------- Comment #13 from mark at codesourcery dot com 2007-05-02 20:02 ------- Subject: Re: [4.0/4.1/4.2/4.3 Regression] ICE in build_simple_base_path, at cp/class.c:474 crowl at google dot com wrote: > I think (B*)(D*)0 is a conversion under 4.10. > >> Has anyone asked about this case on the core reflector? > > Would you like me to? Yes, please! If this is considered valid, it's important to understand why: is it your NULL pointer argument, or that this is a static_cast, even though D isn't complete yet? That will affect the validity of: struct B {}; struct D; D* p; struct D: public B { static const int i = sizeof ((B*)p); }; which is similar, but does not involve the NULL pointer. Thanks, -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27177