Bug#457104: gcc-4.2: [hppa] ICE when building cfitsio3

2007-12-29 Thread Martin Michlmayr
forwarded 457104 http://gcc.gnu.org/PR32889
tags 457104 + fixed-upstream
merge 444873 457104
thanks

* Aurelien Jarno [EMAIL PROTECTED] [2007-12-19 21:59]:
 /usr1/local/share/bison.simple: In function 'ffparse':
 /usr1/local/share/bison.simple:692: internal compiler error: in 
 delete_output_reload, at reload1.c:7958

This was fixed in SVN about 2 weeks ago.
-- 
Martin Michlmayr
http://www.cyrius.com/



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Bug#457104: gcc-4.2: [hppa] ICE when building cfitsio3

2007-12-19 Thread Aurelien Jarno
Package: gcc-4.2
Version: 4.2.2-4
Severity: important

Hi,

cfisio3 FTBFS on hppa with a gcc ICE:

cc -c -g -O2 -D_REENTRANT -DgFortran -DPACKAGE_NAME=\\ -DPACKAGE_TARNAME=\\ 
-DPACKAGE_VERSION=\\ -DPACKAGE_STRING=\\ -DPACKAGE_BUGREPORT=\\ 
-DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 
-DHAVE_MATH_H=1 -DHAVE_LIMITS_H=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 
-DHAVE_FTRUNCATE=1 -DHAVE_LONGLONG=1 -DHAVE_SHMEM_SERVICES=1 
-DHAVE_NET_SERVICES=1  eval_y.c
/usr1/local/share/bison.simple: In function 'ffparse':
/usr1/local/share/bison.simple:692: internal compiler error: in 
delete_output_reload, at reload1.c:7958
Please submit a full bug report,
with preprocessed source if appropriate.
See URL:http://gcc.gnu.org/bugs.html for instructions.
For Debian GNU/Linux specific bug reporting instructions,
see URL:file:///usr/share/doc/gcc-4.2/README.Bugs.
make[2]: *** [eval_y.o] Error 1
make[2]: Leaving directory `/build/buildd/cfitsio3-3.040'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/build/buildd/cfitsio3-3.040'
make: *** [build-stamp] Error 2

It happens with -O2 or -O3, but not with -O1. gcc-4.1 is not affected.
Reduced testcase attached.

Cheers,
Aurelien

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: hppa (parisc)

Kernel: Linux 2.6.18-4-parisc
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gcc-4.2 depends on:
ii  binutils2.18.1~cvs20071027-2 The GNU assembler, linker and bina
ii  cpp-4.2 4.2.2-4  The GNU C preprocessor
ii  gcc-4.2-base4.2.2-4  The GNU Compiler Collection (base 
ii  libc6   2.7-4GNU C Library: Shared libraries
ii  libgcc4 4.2.2-4  GCC support library
ii  libgomp14.2.2-4  GCC OpenMP (GOMP) support library

Versions of packages gcc-4.2 recommends:
ii  libc6-dev 2.7-4  GNU C Library: Development Librari

-- no debconf information
typedef struct
{
  int type;
} Node;
typedef struct
{
  Node *Nodes;
} ParseData;
typedef enum
{
  sum_fct,
  max1_fct,
} funcOp;
extern ParseData gParse;
typedef union
{
  int Node;
  char str[256];
} FFSTYPE;
static const char fftranslate[] = { 0 };
static const short ffpact[] = { -32768 };
static const short ffcheck[] = { 1 };
int ffchar;
ffparse ()
{
  int ffstate;
  int ffn;
  int ffchar1 = 0;
  FFSTYPE ffvsp[100];
  short *ffss;
  FFSTYPE ffval;
ffnewstate:
  ffss = (short *) __builtin_alloca (100);
  ffn = ffpact[ffstate];
  if (ffchar == -2)
{
  ffchar = fflex ();
  ffchar1 = ((unsigned) (ffchar) = 288 ? fftranslate[ffchar] : 61);
}
  if (ffn  0 || ffn  1457 || ffcheck[ffn] != ffchar1)
  ffreduce:
switch (ffn)
  {
  case 54:
	{
	  if (((ffvsp[-2].str)[0]  'S' ? -1 : (ffvsp[-2].str)[0] 
	   'S' ? 1 : strcmp ((ffvsp[-2].str), SUM()) == 0)
	New_Func (gParse.Nodes[ffvsp[-1].Node].type, sum_fct, 1,
		  ffvsp[-1].Node, 0, 0, 0, 0, 0, 0);
	  if ffvsp[-2].str)[0] 
		'A' ? 1 : strcmp ((ffvsp[-2].str),
  ACCUM()) == 0)
	   (gParse.Nodes[ffvsp[-1].Node].type == 259))
	{
	}
	  else
	if (((ffvsp[-2].str)[0]  'A' ? -1 : (ffvsp[-2].str)[0] 
		 'A' ? 1 : strcmp ((ffvsp[-2].str), ABS()) == 0)
	New_Func (gParse.Nodes[ffvsp[-1].Node].type, max1_fct, 1,
		  ffvsp[-1].Node, 0, 0, 0, 0, 0, 0);
	  if (gParse.Nodes[ffvsp[-1].Node].type != 260)
	if ((ffval.Node)  0)
	  goto ffreduce;
	}
  }
  goto ffnewstate;
}