bart%videovax.tv.tek.com@RELAY.CS.NET (Bart Massey) (07/27/90)
I have a YACC-able grammar in front of me, of about 2000 lines, which I wrote for a complicated assembly language with a bunch of magic preprocessing. When I produce a parser for this grammar using either GNU Bison or AT&T YACC, the resulting program fails to reject some inputs containing simple syntax errors. I didn't even realize there was a problem until I tried producing the parser using Corbett's "Berkeley YACC", at which point the resulting program correctly rejected these incorrect inputs. Please excuse the vagueness of the above, but I haven't been able to reduce this hairy kludge of mine to a simple grammar/program which displays the problem. My question is: under what known circumstances, if any, do both Bison and YACC produce parsers which fail to reject incorrect programs? Does BYACC fix any of these? I hesitate to even ask such a vague question, but I thought I'd give it a shot, since the underlying issue seems pretty critical to me -- I'm trusting this parser to distinguish syntactically correct inputs from syntactically incorrect ones... Any comments or ideas, or should I just go crawl back under whatever rock I crawled out from under? :-) Bart Massey ..tektronix!videovax.tv.tek.com!bart ..tektronix!reed.bitnet!bart -- Send compilers articles to compilers@esegue.segue.boston.ma.us {spdcc | ima | lotus| world}!esegue. Meta-mail to compilers-request@esegue.