From e02d425aa5e3959bbc837f39d6b3ae7ea54dcc26 Mon Sep 17 00:00:00 2001 From: Max New Date: Fri, 6 Sep 2013 09:36:18 -0700 Subject: [PATCH] Fix Redex variable-not-otherwise-mentioned bug. And add a test to keep it from happening again. --- pkgs/redex-pkgs/redex-lib/redex/private/recursive-lang.rkt | 4 +++- pkgs/redex-pkgs/redex-test/redex/tests/enum-test.rkt | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/redex-pkgs/redex-lib/redex/private/recursive-lang.rkt b/pkgs/redex-pkgs/redex-lib/redex/private/recursive-lang.rkt index ee719e2861..62c6887282 100644 --- a/pkgs/redex-pkgs/redex-lib/redex/private/recursive-lang.rkt +++ b/pkgs/redex-pkgs/redex-lib/redex/private/recursive-lang.rkt @@ -242,7 +242,9 @@ [else (loop sub-pat)])) sub-pats)] [(? (compose not pair?)) - (set pat)]))) + (if (symbol? pat) + (set pat) + (set))]))) (nt-rhs the-nt))) lang))) diff --git a/pkgs/redex-pkgs/redex-test/redex/tests/enum-test.rkt b/pkgs/redex-pkgs/redex-test/redex/tests/enum-test.rkt index 2ff840840f..fe8b2f648d 100644 --- a/pkgs/redex-pkgs/redex-test/redex/tests/enum-test.rkt +++ b/pkgs/redex-pkgs/redex-test/redex/tests/enum-test.rkt @@ -80,7 +80,7 @@ ;; test variable-not-otherwise-mentioned (define-language VarMentioned - (mention a b c x y z) + (mention a b c x y z 2 #f #\c (vec 1 2)) (var variable-not-otherwise-mentioned)) (try-it 20 VarMentioned var)