From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8576 invoked by alias); 17 Mar 2003 17:06:02 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 8496 invoked by uid 71); 17 Mar 2003 17:06:01 -0000 Date: Mon, 17 Mar 2003 17:06:00 -0000 Message-ID: <20030317170601.8451.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Falk Hueffner Subject: Re: optimization/8300: [3.2/3.3/3.4 regression] [sparc] ICE in gen_reg_rtx, at emit-rtl.c:662 Reply-To: Falk Hueffner X-SW-Source: 2003-03/txt/msg01149.txt.bz2 List-Id: The following reply was made to PR optimization/8300; it has been noted by GNATS. From: Falk Hueffner To: Robert Schiele Cc: Richard Henderson , gcc-bugs@gcc.gnu.org, tneumann@pi3.informatik.uni-mannheim.de, gcc-gnats@gcc.gnu.org Subject: Re: optimization/8300: [3.2/3.3/3.4 regression] [sparc] ICE in gen_reg_rtx, at emit-rtl.c:662 Date: 17 Mar 2003 17:59:25 +0100 Robert Schiele writes: > On Mon, Mar 17, 2003 at 04:24:34PM +0100, Falk Hueffner wrote: > > Robert Schiele writes: > > > > > void a() { > > > double b; > > > int c[2]; > > > *((int*)&b) && (c[1] = 0); > > > } > > > > > > Exactly same problem. And this time there is no pointer outside well > > > defined data area. You agree that this sample is legal code? > > > > No, you're violating the rule in 6.5.7 by accessing an object of type > > double with an lvalue of type int. > > 6.5.7? This one is about bitwise shift operators Sorry, I meant 6.5, paragraph 7. > lvalue? b is not used as an lvalue here, is it? No, but you're accessing its value. > Is it generally illegal to do a cast of this type? No, only accessing the resulting object. -- Falk