X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/2b45240d6c1b9177533aa5d83ac1c879198111c5..fbca394ee1416fcfa41f839abc313a037732e84d:/tests/glr-regression.at diff --git a/tests/glr-regression.at b/tests/glr-regression.at index b376c1c0..ab6e1437 100644 --- a/tests/glr-regression.at +++ b/tests/glr-regression.at @@ -67,9 +67,13 @@ static YYSTYPE exprMerge (YYSTYPE x0, YYSTYPE x1) return 0; } +const char *input = NULL; + int -main (void) +main (int argc, const char* argv[]) { + assert (argc == 2); + input = argv[1]; return yyparse (); } @@ -78,16 +82,7 @@ main (void) int yylex (void) { - for (;;) - { - int ch; - assert (!feof (stdin)); - ch = getchar (); - if (ch == EOF) - return 0; - else if (ch == 'B' || ch == 'P') - return ch; - } + return *input++; } ]]) AT_BISON_OPTION_POPDEFS @@ -96,7 +91,7 @@ AT_BISON_CHECK([[-o glr-regr1.c glr-regr1.y]], 0, [], [[glr-regr1.y: warning: 1 shift/reduce conflict [-Wconflicts-sr] ]]) AT_COMPILE([glr-regr1]) -AT_PARSER_CHECK([[echo BPBPB | ./glr-regr1]], 0, +AT_PARSER_CHECK([[./glr-regr1 BPBPB]], 0, [[E -> 'B' E -> 'B' E -> E 'P' E @@ -212,16 +207,27 @@ AT_BISON_CHECK([[-o glr-regr2a.c glr-regr2a.y]], 0, [], ]]) AT_COMPILE([glr-regr2a]) -AT_PARSER_CHECK([[echo s VARIABLE_1 t v x q | ./glr-regr2a]], 0, +AT_DATA([input1.txt], +[[s VARIABLE_1 t v x q +]]) +AT_PARSER_CHECK([[./glr-regr2a input1.txt]], 0, [[Variable: 'VARIABLE_1' -]], []) -AT_PARSER_CHECK([[echo s VARIABLE_1 , ANOTHER_VARIABLE_2 t e | ./glr-regr2a]], +]]) + +AT_DATA([input2.txt], +[[s VARIABLE_1 , ANOTHER_VARIABLE_2 t e +]]) +AT_PARSER_CHECK([[./glr-regr2a input2.txt]], 0, [[Varlist: 'VARIABLE_1,ANOTHER_VARIABLE_2' ]]) -AT_PARSER_CHECK([[echo s VARIABLE_3 t v x | ./glr-regr2a]], 0, + +AT_DATA([input3.txt], +[[s VARIABLE_3 t v x +]]) +AT_PARSER_CHECK([[./glr-regr2a input3.txt]], 0, [[Variable: 'VARIABLE_3' -]], []) +]]) AT_CLEANUP @@ -330,10 +336,13 @@ glr-regr3.y: warning: 1 reduce/reduce conflict [-Wconflicts-rr] ]]) AT_COMPILE([glr-regr3]) -AT_PARSER_CHECK([[echo p1 t4 o2 p1 p1 t1 o1 t2 p2 o1 t3 p2 p2 | ./glr-regr3]], +AT_DATA([input.txt], +[[p1 t4 o2 p1 p1 t1 o1 t2 p2 o1 t3 p2 p2 +]]) +AT_PARSER_CHECK([[./glr-regr3 input.txt]], 0, [[Result: 1c04 -]], []) +]]) AT_CLEANUP @@ -1545,13 +1554,6 @@ AT_DATA_GRAMMAR([glr-regr17.y], ]AT_YYLEX_DECLARE[ %} -%initial-action { - @$.first_line = 1; - @$.first_column = 1; - @$.last_line = 1; - @$.last_column = 1; -} - %% /* Tests the case of an empty RHS that has inherited the location of the