- $(FLEX) -t $< | $(SED) -e 's/int yyl;/yy_size_t yyl;/;s/int yyleng_r;/yy_size_t yyleng_r;/' >$@
-
-Console.$(OBJEXT) Execute.lo Handler.lo Highlight.lo Library.lo Output.lo Parser.lo lex.cy.lo: Cycript.tab.hh
-Cycript.tab.cc Cycript.tab.hh location.hh position.hh stack.hh Cycript.output: Cycript.yy
- $(BISON) -v --report=state $<
- ! grep -n '^ *$$default reduce using rule [0-9]* (Lex[A-Z][^)]*)$$' Cycript.output -B 2 | grep 'shift, and go to state [0-9]*$$'
- ! grep -n '^ *$$default reduce using rule [0-9]* (Lex[A-Z][^)]*)$$' Cycript.output -B 2 | grep -v '$$default' | grep 'reduce using rule [0-9]* ([^)]*)$$'
+ $(FLEX) -o $@ -T $< 2>lex.output || (grep -F '$<:' lex.output; false)
+ grep -F 'No backing up.' lex.backup >/dev/null
+ ! grep -F ': warning, ' lex.output || true
+
+lex.cy.lo: Cycript.tab.hh
+Cycript.tab.cc Cycript.tab.hh stack.hh Cycript.output: Cycript.yy
+ $(BISON) -v --report=state -Werror $<
+ ! grep -n '^State [0-9]* conflicts:' Cycript.output
+ ! grep -n '^ *$$default *reduce using rule [0-9]* (Lex[A-Z][^)]*)$$' Cycript.output -B 2 | grep 'shift, and go to state [0-9]*$$'
+ ! grep -n '^ *$$default *reduce using rule [0-9]* (Lex[A-Z][^)]*)$$' Cycript.output -B 2 | grep -v '$$default' | grep 'reduce using rule [0-9]* ([^)]*)$$'