From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1037 invoked by alias); 20 Jan 2004 10:21:15 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 1030 invoked from network); 20 Jan 2004 10:21:13 -0000 Received: from unknown (HELO frothingslosh.sfbay.redhat.com) (66.187.237.200) by sources.redhat.com with SMTP; 20 Jan 2004 10:21:13 -0000 Received: from frothingslosh.sfbay.redhat.com (localhost.localdomain [127.0.0.1]) by frothingslosh.sfbay.redhat.com (8.12.8/8.12.8) with ESMTP id i0KALDQA005251; Tue, 20 Jan 2004 02:21:13 -0800 Received: (from rth@localhost) by frothingslosh.sfbay.redhat.com (8.12.8/8.12.8/Submit) id i0KALDIj005249; Tue, 20 Jan 2004 02:21:13 -0800 X-Authentication-Warning: frothingslosh.sfbay.redhat.com: rth set sender to rth@redhat.com using -f Date: Tue, 20 Jan 2004 10:21:00 -0000 From: Richard Henderson To: Jan Hubicka Cc: Jan Hubicka , gcc@gcc.gnu.org, law@redhat.com, Jason Merrill Subject: Re: tree-SSA and indirect references. Message-ID: <20040120102113.GA5204@redhat.com> Mail-Followup-To: Richard Henderson , Jan Hubicka , Jan Hubicka , gcc@gcc.gnu.org, law@redhat.com, Jason Merrill References: <20040120003156.GE8495@atrey.karlin.mff.cuni.cz> <20040120005924.GA3079@redhat.com> <20040120095013.GC7878@kam.mff.cuni.cz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040120095013.GC7878@kam.mff.cuni.cz> User-Agent: Mutt/1.4i X-SW-Source: 2004-01/txt/msg01467.txt.bz2 On Tue, Jan 20, 2004 at 10:50:13AM +0100, Jan Hubicka wrote: > > On Tue, Jan 20, 2004 at 01:31:56AM +0100, Jan Hubicka wrote: > > > vara=(type *)&varb; > > > varc=*vara; > > In the case of Gerald's testcase these are different classes inherited > from each other. Would you please be concrete, draw the diagram and show the members? My guess is that the best way to fix this is to change how the C++ front end implements inheritence. At present, as you can see, the front end takes the address of the base, casts, and then dereferences. From the point of view of GIMPLE, it would be much better to have this appear to be nested structures. (The only exception will be for virtual bases, but I can see from the above that that is not at issue for this test case.) I have no idea how easy or difficult such a change might be. Jason or Mark, perhaps you could comment? r~