bug-bison
[Top][All Lists]
Advanced

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

bug in hash.c (bison-20010824.tgz)


From: Juan Manuel Guerrero
Subject: bug in hash.c (bison-20010824.tgz)
Date: Mon, 27 Aug 2001 13:48:17 +0200

I have tried to compile bison-20010824.tgz on MSDOS/DJGPP.
The compilation breaks with the following error message:

Making all in lib
make.exe[2]: Entering directory `d:/projekt/bison/lib'
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../intl -I../src    -g -O2 -c 
error.c
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../intl -I../src    -g -O2 -c 
getopt.c
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../intl -I../src    -g -O2 -c 
getopt1.c
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I. -I../intl -I../src    -g -O2 -c hash.c
In file included from hash.c:22:
hash.h:24: parse error before `__P'
hash.h:25: parse error before `__P'
hash.h:26: parse error before `__P'
hash.h:37: parse error before `hash_func_t'
hash.h:37: warning: no semicolon at end of struct or union
hash.h:38: warning: data definition has no type or storage class
hash.h:39: parse error before `ht_compare'
hash.h:39: warning: data definition has no type or storage class
[SNIP] (A lot of more errors...)

There are two reasons for this:
1) hash.c includes hash.h before system.h
   but system.h contains the definitions for prototypes.
2) system.h defines this:

#if PROTOTYPES
# define PARAMS(p) p
#else
# define PARAMS(p) ()
#endif

but hash.h uses this:
 __P
as macro instead of PARAMS.

After having fixed this the package compiles.
Running the testsuit shows that all calc.at tests fail.
The testsuit generates a very long debug output for
the whole calc.at test. I do not append this output
here because I do not know if the failure is MSDOS/DJGPP
specific. I have no linux box to test this.
Hope the info is of some use.

Regards,
Guerrero, Juan Manuel

P.S.: I have inspected bison-20010826.tgz. It still comtains the same bug.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]