Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 117702

Summary: internal compiler error
Product: [Fedora] Fedora Reporter: randhir <randhirkumar.singh>
Component: gccAssignee: Jakub Jelinek <jakub>
Status: CLOSED RAWHIDE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: 3.3.3-3 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-03-17 12:54:43 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 114963    
Attachments:
Description Flags
internal compiler error none

Description randhir 2004-03-07 17:29:47 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.1)
Gecko/20031030

Description of problem:
When I build Intel's OpenCV library, I get this internal compiler
error,  and the source does not compiler.

Version-Release number of selected component (if applicable):
gcc-3.3.2-1

How reproducible:
Always

Steps to Reproduce:
1.make OpenCV library
2.
3.
    

Additional info:

Comment 1 randhir 2004-03-07 17:32:37 UTC
Created attachment 98358 [details]
internal compiler error

Comment 2 Jakub Jelinek 2004-03-08 15:44:24 UTC
Reproduced, though on IA-32 only, not x86-64 (and as there is no
-m32 switch in the options, I assume it is real IA-32).
Simplified into:
/* { dg-do compile } */
/* { dg-options "-march=i686 -O2 -ffast-math -fPIC" { target i?86-*-* } } */

extern double foo (double x);
extern double bar (double x, double y);
extern double baz (double x) __attribute__ ((__const__));

void
test (double x, double y, double z)
{
  double a[7], b, c;
  int i;

  b = -x * x / 3;
  for (i = 0; i < 6; i++)
    a[i] = -x / 3;
  c = bar (baz (y), 1.0 / 3) - b / 3.0 * bar (baz (y), -1.0 / 3);
  if (!(y < 0.001 && y > -0.001))
    a[i] = foo (z / 3.0) * c;
}