Fixed a bug in find-base-cases.

svn: r13303
This commit is contained in:
Casey Klein 2009-01-28 16:30:22 +00:00
parent fb7bda99c8
commit 6afb62f510
2 changed files with 9 additions and 0 deletions

View File

@ -48,6 +48,13 @@
(v . (2 0)) (v-e . (2 2 2 2 1)) (v-v . (0 2))
(x . (0)) (x-e . (2 2 2 2 1 3)) (x-v . (2 2)) (x-x . (0)))))
(let ()
(define-language L
(x (variable-prefix x)
(variable-except y))
(y y))
(test (hash-ref (find-base-cases L) 'x) '(0 0)))
(let ()
(define-language lang
(e number x y)

View File

@ -429,6 +429,8 @@ To do a better job of not generating programs with free variables,
(set! nts (cons (symbol->nt pat) nts)))]
[`(cross ,(? symbol? x-nt))
(set! nts (cons x-nt nts))]
[`(variable-except ,s ...) (void)]
[`(variable-prefix ,p) (void)]
[`() (void)]
[(struct ellipsis (_ p _ _))
(loop p)]