[gnu.gcc.bug] Gcc 1.33 crashes in i386-sysV mode on following input

campbell@UUNET.UU.NET (Jim Campbell) (04/03/89)

Hi,

The following lines of input cause the cc1 module of gcc to die with
a fatal error message, citing signal 6, when the compiler is compiled
to run under the i386-sysv configuration on AT&T 6386 computer running
System V.3.2.  I have traced the source of the error to expr.c, in
the routine emit_move_insn().

This is the smallest I could make the test case.   The bug disappears when
structure members are removed or made into a different type.

Any help you could give would be appreciated.  My work # is 617/225-1618
if you have any questions.
					-- Jim Campbell, Lotus Development


--> cut here <--
extern char **vec;

typedef struct
{
  unsigned short int    val_loc;
  signed char type;
} struct1;

typedef struct
{   
  unsigned char    fields;        
} struct2;

static  int
foo()
{
  unsigned short int var;

    var = ((struct2 *)((struct1 *)((vec[3]))) )->fields * sizeof(struct1);
}