I found something that causes a fatal GCC bug with both the stock GCC, and gcc-2.8.1 built from ports. Here's how it aborts: cc -c -O -pipe -DFREEBSD_ELF -I. -I. -I./config -DHAVE_CONFIG_H \ -I./../include/opcode -I./../readline -I../bfd -I./../bfd -I./../include \ ada-lang.c ada-lang.c: In function `ada_evaluate_subexp': ada-lang.c:5951: internal error--insn does not satisfy its constraints: (insn 2997 2996 4542 (parallel[ (set (reg:DI 1 %edx) (minus:DI (reg:DI 0 %eax) (reg/v:DI 3 %ebx))) (clobber (scratch:SI)) ] ) 135 {subdi3} (insn_list 2982 (insn_list 2994 (nil))) (expr_list:REG_DEAD (mem:DI (plus:SI (reg:SI 6 %ebp) (const_int -64))) (expr_list:REG_DEAD (reg/v:DI 3 %ebx) (expr_list:REG_UNUSED (scratch:SI) (nil))))) cc: Internal compiler error: program cc1 got fatal signal 6 *** Error code 1 Fix: I don't know how to fix GCC, but a work-around to the bug can be made by changing 2 ocurrences of the following line: (*pos) += 3 + BYTES_TO_EXP_ELEM (tem + 1); in ada-lang.c to (*pos) = (*pos) + 3 + BYTES_TO_EXP_ELEM (tem + 1); How-To-Repeat: This can be reproduced by building the Ada-aware GDB port found at: ftp://ftp.pcnet.com/users/eischen/FreeBSD/adagdb-4.17-port.tar.gz and building with 'make EXPOSE_FATAL_GCC_ERROR=yes'. If you don't define EXPOSE_FATAL_GCC_ERROR, a work-around patch is applied and the port successfully builds.
On Mon, Jun 21, 1999 at 03:56:23PM -0400, Daniel Eischen wrote: > > > > Have you reported this to the GNU maintainers? > > No, I wasn't sure if it was a bug that FreeBSD introduced with > it's mods to gcc or not. Now that we're at egcs, perhaps I'll > try to reproduce the problem again. There's probably not much we can do with the bug, esp. given that it appears in the gcc port which has fewer FreeBSD-specific patches... -- This is my .signature which gets appended to the end of my messages.
Tim Vanderhoek wrote: > On Mon, Jun 21, 1999 at 03:56:23PM -0400, Daniel Eischen wrote: > > > > > > Have you reported this to the GNU maintainers? > > > > No, I wasn't sure if it was a bug that FreeBSD introduced with > > it's mods to gcc or not. Now that we're at egcs, perhaps I'll > > try to reproduce the problem again. > > There's probably not much we can do with the bug, esp. given that it > appears in the gcc port which has fewer FreeBSD-specific patches... OK, why don't you close it out then. If I can reproduce it under egcs, I'll report it to the GNU folks. Dan Eischen eischen@vigrid.com
State Changed From-To: open->closed Originator will be reporting bug to the GNU folks if it reproduces unter (s/unter/under/) their latest.