From owner-freebsd-bugs Fri May 17 00:20:07 1996 Return-Path: owner-bugs Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id AAA22460 for bugs-outgoing; Fri, 17 May 1996 00:20:07 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id AAA22419; Fri, 17 May 1996 00:20:03 -0700 (PDT) Resent-Date: Fri, 17 May 1996 00:20:03 -0700 (PDT) Resent-Message-Id: <199605170720.AAA22419@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, txix@diku.dk Received: from vidar.diku.dk (root@vidar.diku.dk [130.225.96.249]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id AAA22218 for ; Fri, 17 May 1996 00:15:19 -0700 (PDT) Received: from tyr.diku.dk (txix@tyr.diku.dk [130.225.96.226]) by vidar.diku.dk (8.6.12/8.6.12) with ESMTP id JAA06030 for ; Fri, 17 May 1996 09:15:11 +0200 Received: (txix@localhost) by tyr.diku.dk (8.6.12/8.6.12) id JAA05147; Fri, 17 May 1996 09:15:10 +0200 Message-Id: <199605170715.JAA05147@tyr.diku.dk> Date: Fri, 17 May 1996 09:15:10 +0200 From: txix@diku.dk Reply-To: txix@diku.dk To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: gnu/1210: gcc bug report Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Number: 1210 >Category: gnu >Synopsis: gcc (v2.6.3) -O and -O2 compile-time bus error >Confidential: no >Severity: serious >Priority: low >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri May 17 00:20:01 PDT 1996 >Last-Modified: >Originator: Peter Holst Andersen >Organization: None >Release: FreeBSD 2.1.0-RELEASE i386 >Environment: Pentium 100 MHz, 256 Kb Pipeline burst cache, 430FX Chipset, 16 Mb ram. gcc version 2.6.3 >Description: Compilation of the program below with gcc -O yields: "gcc: Internal compiler error: program cc1 got fatal signal 10" The same error message appears when trying with -O2, but not with -O3 or -O4. >How-To-Repeat: Compilation of the program below with gcc -O will repeat the error struct s1 { double x, y, z; }; struct s2 { double r, g, b; }; struct s3 { struct s1 p; struct s2 c; }; void create_light(struct s3 *li, double x, double y, double z, double r, double g, double b) { li->p.x = x; li->p.y = y; li->p.z = z; li->c.r = r; li->c.g = g; li->c.b = b; } >Fix: Work-around: declare "li" volatile. >Audit-Trail: >Unformatted: