[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Problem with egcs? Not sure.



Hi guys,

[FYI: cc'ed to XWPE mailing list for ideas]

Sometime ago I downloaded the xwpe IDE from
http://www.rpi.edu/~payned/xwpe/xwpe-1.5.12a.tgz

I tried to compile it with egcs-1.0.3a, and it came up with the following
errors in we_wind.c:

gcc -g -O2  -DCC_HAS_PROTOS=1 -DGPM=1 -DRANDLIB=1 -DNOPRINTER=1 -DNOVSWTCH=1  -DLIBRARY_DIR=\"/usr/lib/xwpe\" -c we_wind.c
we_wind.c: In function `e_schr_lst_wsv':
we_wind.c:1290: called object is not a function
we_wind.c:1290: called object is not a function
we_wind.c:1290: called object is not a function
make: *** [we_wind.o] Error 1

I talked to the author, and he tells me that this compiles just fine with
gcc-2.7.2.3 *and* egcs-1.0.2. 

So it looks like there might be a problem that crept into egcs-1.0.3a. I
finally downloaded egcs-1.1b, and built it. 

Tried it again, and it came up with different error messages: 

gcc -g -O2  -DCC_HAS_PROTOS=1 -DGPM=1 -DRANDLIB=1 -DNOPRINTER=1 -DNOVSWTCH=1  -DLIBRARY_DIR=\"/usr/lib/xwpe\" -c we_wind.c
we_wind.c: In function `e_schr_lst_wsv':
we_wind.c:1290: called object is not a function
we_wind.c:1290: called object is not a function
we_wind.c:1290: warning: unreachable code at beginning of switch statement
we_wind.c:1290: called object is not a function
make: *** [we_wind.o] Error 1

The offending area of code is (notice that there is NO such switch
statement in the code!):

int e_schr_lst_wsv(char *str, int xa, int ya, int n, int strlen, int ft,
  int fz, struct dirfile **df, FENSTER *f)
{
#if MOUSE
   extern struct mouse e_mouse;
#endif
   int ret, num;
   do
   {  *df = e_add_df(str, *df);
#ifndef NEWSTYLE
      ret = e_schreib_leiste(str, xa, ya, n-4, strlen, ft, fz);
#else
      ret = e_schreib_leiste(str, xa, ya, n-3, strlen, ft, fz);
#endif
#if MOUSE
      if(ret < 0 && e_mouse.y == ya && e_mouse.x >= xa+n-3
				&& e_mouse.x <= xa+n-1) ret = CDO;
#endif
      if (ret == CDO && e_sv_window(xa+n, ya, &num, *df, f) == WPE_CR)
          strcpy(str, (*df)->name[num]);  /* <-- ERROR HAPPENS HERE */
   }  while(ret == CDO);
   return(ret);
}

Any ideas? I'm on a i486DX4/100, running Linux 2.1.121, using
glibc-2.0.94.
 
Cheers,
Alex
--
 /\_/\  Legalise cannabis now! 
( o.o ) Grow some cannabis today!
 > ^ <  Peace, Love, Unity and Respect to all.

http://www.tahallah.demon.co.uk - *new* - rewritten for text browser users!

Linux tahallah 2.1.121 #40 Thu Sep 10 07:26:39 EDT 1998 i486 unknown