Hi Bob,
thanks for the quick answer.
Well, now you mention it: right now I got for the first time an error
for which I have absolutely no clue what to do, and which I could not
resove after some (random) guessing.
I just downloaded bison version 1.875 because that is what I used on a
previous system and there the code compiled. However, what I get is this:
flex -Pfct_pddl lex-fct_pddl.l
bison -pfct_pddl -bscan-fct_pddl scan-fct_pddl.y
scan-fct_pddl.y: warning: 1 useless nonterminal and 2 useless rules
scan-fct_pddl.y:115.17-33: warning: useless nonterminal: literal_name_plus
scan-fct_pddl.y:793.1-796.1: warning: useless rule: literal_name_plus:
literal_name
scan-fct_pddl.y:798.1-802.1: warning: useless rule: literal_name_plus:
literal_name literal_name_plus
scan-fct_pddl.y: conflicts: 1 shift/reduce
gcc -c -O6 -Wall -g -ansi scan-fct_pddl.tab.c
scan-fct_pddl.tab.c: In function ‘fct_pddlparse’:
scan-fct_pddl.tab.c:1213: warning: implicit declaration of function
‘fct_pddllex’
scan-fct_pddl.tab.c:2038: warning: implicit declaration of function
‘fct_pddlerror’
In file included from scan-fct_pddl.y:845:
lex.fct_pddl.c:615:31: error: macro "fct_pddlwrap" passed 1 arguments,
but takes just 0
In file included from scan-fct_pddl.y:845:
lex.fct_pddl.c: In function ‘fct_pddl_init_buffer’:
lex.fct_pddl.c:1642: warning: implicit declaration of function ‘fileno’
scan-fct_pddl.y: In function ‘load_fct_file’:
scan-fct_pddl.y:910: error: ‘yyin’ undeclared (first use in this function)
scan-fct_pddl.y:910: error: (Each undeclared identifier is reported only
once
scan-fct_pddl.y:910: error: for each function it appears in.)
make: *** [scan-fct_pddl.tab.o] Error 1
I of course have absolutely no clue about the error reported in
lex.fct_pddl.c. As for "yyin" apparently that's another one of these
downwards compatibility issues? Yes I can see that yyin is decleared
nowhere; but that has been the case since 12 years, and I have no idea
how to declare it because i don;t know the required type.
thanks,
joerg
Bob Rossi wrote:
On Tue, Oct 24, 2006 at 05:38:27PM +0200, Joerg Hoffmann wrote:
Dear Bison makers,
First, thanks for your very useful tool. However, I have to say I'm
frustrated by the utter lack of downwards compatibility. Why is this
necessary?
I'm working with code that originated in 1998. It has in the meantime
been copied so often that it is impossible to revise all instances.
Every time I get a new bison update I get new errors and complaints that
are totally cryptic and un-understandable, whereas with the older
versions everything worked. Just as a simple example, some old versions
allowed to ommit the ";" at the end of a rule. Newer versions don't. In
effect, I have spent countless hours in the last 5 years inserting ";"
at the points where some programmer in 1998 happened to leave them away.
It would be so much more convenient if the bison development obeyed some
form of downwards compatibility.
best regards,
Joerg Hoffmann
Hi Joerg,
It probably would have been a good idea to not hold this in for so long.
If you have a problem with bison, report early, report often.
Anyways, as you see problems, and report them, they can be fixed if they
are bugs. Others will benefit from your frustrations.
Bob Rossi
_______________________________________________
help-bison@gnu.org http://lists.gnu.org/mailman/listinfo/help-bison