prefer compilers earlier in list
[bpt/guile.git] / test-suite / lalr / test-glr-basics-02.scm
1 ;;; test-lr-basics-02.scm --
2 ;;
3 ;;A grammar that only accept a single terminal or the EOI.
4 ;;
5
6 (load "common-test.scm")
7
8 (define (doit . tokens)
9 (let ((parser (lalr-parser (expect: 0)
10 (driver: glr)
11 (A)
12 (e (A) : $1
13 () : 0))))
14 (parser (make-lexer tokens) error-handler)))
15
16 (check
17 (doit)
18 => '(0))
19
20 (check
21 (doit (make-lexical-token 'A #f 1))
22 => '(1))
23
24 (check
25 (doit (make-lexical-token 'A #f 1)
26 (make-lexical-token 'A #f 2)
27 (make-lexical-token 'A #f 3))
28 => '())
29
30 ;;; end of file