Path: utzoo!telly!ddsw1!mcdchg!rutgers!mailrus!tut.cis.ohio-state.edu!MOOSE.CITA.UTORONTO.CA!trq
From: trq@MOOSE.CITA.UTORONTO.CA (Tom Quinn)
Newsgroups: gnu.gcc.bug
Subject: bug in sparc gcc 1.31
Message-ID: <8812031639.AA29861@moose.cita.utoronto.ca>
Date: 3 Dec 88 16:39:15 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 43

The following code causes gcc to get a fatal signal.  This is gcc
version 1.31 on a sun 4/110 running SUNOS 4.0.

The compile:
gcc -g -v -S  -sun4 -c  control2.c
gcc version 1.31
 /usr/local/lib/gcc-cpp -v -undef -D__GNU__ -D__GNUC__ -Dsparc -Dsun -Dunix control2.c /tmp/cca18106.cpp
GNU CPP version 1.31
 /usr/local/lib/gcc-cc1 /tmp/cca18106.cpp -quiet -dumpbase control2.c -g -version -o control2.s
GNU C version 1.31 (sparc) compiled by GNU C version 1.31.
gcc: Program cc1 got fatal signal 6.

The code:
------------------------------------------------------------
typedef struct {
   char descrip[80],		 
	*name;				 
   float *vec;				 
   int dimen;				 
} VECTOR;   
typedef union yystype {			 
   char charval[80];
   int intval;
};
extern union yystype  yylval;
   static char data_file[80];	 
union yystype 	yylval;			 
int
yyparse()
{
  register union yystype  *yyvsp;
  union yystype  yyvsa[200 ];	 
  union yystype  *yyvs = yyvsa;	 
  yyvsp = yyvs;
  *++yyvsp = yylval;
{
	    VECTOR temp;
	    if(read_row(data_file,yyvsp[0].intval,&temp) == 0) {
	       copy_vector(yyvsp[-1].charval,temp);
	    }
	 ;
}
}