Bug in latest snapshot of egcs

Tom Haywood thomas_haywood@aus.hp.com
Tue May 18 18:12:00 GMT 1999


% xgcc -v
Using builtin specs.
gcc version egcs-2.93.22 19990517 (gcc2 ss-980929 experimental)

Host     : hppa2.0-hp-hpux10.20
Target   : sh-coff
Snapshot : 19990517

Command line:
% xgcc -O -m3 -c foo.c

Compiler output:
foo.c: In function `Proc_6':
foo.c:25: Internal compiler error in `make_edges', at flow.c:967
Please submit a full bug report to `egcs-bugs@egcs.cygnus.com'.
See <URL: http://egcs.cygnus.com/faq.html#bugreport > for details.

The source code is as follows:

typedef enum
{
    Ident_1,
    Ident_2,
    Ident_3,
    Ident_5
} Enumeration;


void Proc_6 (Enumeration Enum_Val_Par, Enumeration* Enum_Ref_Par)
{
    switch (Enum_Val_Par)
    {
    case Ident_1: 
	break;
    case Ident_2: 
	break;
    case Ident_3:
	*Enum_Ref_Par = Ident_2;
	break;
    case Ident_5: 
	break;
    }
}

This is the smallest I can get the code to, and still have it crash.
Some notes:
- This doesn't happen in egcs-1.1.2
- Removing either -O or -m3 makes the problem go away
- Removing any of the switch statements makes the problem go away
- The problem still occurs on a linux (redhat 6.0) host

Regards,

Tom Haywood,
Hewlett-Packard Australia.


More information about the Gcc-bugs mailing list