From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Davies To: egcs@cygnus.com Subject: signal 6 while compiling Date: Sat, 04 Apr 1998 14:20:00 -0000 Message-id: <35251D74.64C65280@ibm.net> X-SW-Source: 1998-04/msg00138.html While compiling linux 2.1.9[12] with egcs980328 (cvs) I got a signal 6 when compiling 3c503.c. I've stripped the source as much as I can and replicated it below. I also get the same problem while compiling regex on glibc2 Mark. #include #include // comment this out and it compiles ? #include #include "8390.h" #include "3c503.h" // gives error - function type not a prototype static void el2_block_input( ); void dummy(); static void el2_block_input( ) { int count; int ring_offset; struct sk_buff *skb; unsigned short int *buf; struct device *dev; // removing these variables and changing the memcpy below compiles ok. int end_of_ring = dev->rmem_end; int semi_count = end_of_ring - (dev->mem_start + ring_offset); // comment this out and it compiles - with or without changing the lines // above memcpy_fromio(skb->data, dev->mem_start + ring_offset, semi_count); // comment this out and it compiles outb_p((ei_status.interface_num == 0 ? ECNTRL_THIN : ECNTRL_AUI) | ECNTRL_INPUT | ECNTRL_START, E33G_CNTRL); // comment this out and it compiles buf = (unsigned short int *) skb->data; // comment this out and it compiles count = (count + 1) >> 1; // Remove the if and/or the for loop and it compiles ok. // it doesn't seem to matter whats inside the if or for loop // except for the insw for(;;) { if(count > 0) { } else { // comment this out and it compiles insw(E33G_FIFOH, buf, count); // changing to this compiles // insw(E33G_FIFOH, (short int *)0, count); // changing to this compiles // insw(E33G_FIFOH, buf, 0); } } return; }