summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chickadee/graphics/seagull.scm5
1 files changed, 4 insertions, 1 deletions
diff --git a/chickadee/graphics/seagull.scm b/chickadee/graphics/seagull.scm
index 91562c7..6b8073d 100644
--- a/chickadee/graphics/seagull.scm
+++ b/chickadee/graphics/seagull.scm
@@ -1458,7 +1458,10 @@
(_
(define-values (rest-pred subs*)
(eval-predicate (apply predicate:list rest)))
- (values (predicate:list pred* rest-pred) subs*))))))
+ (match rest-pred
+ (#f (values #f '()))
+ (#t (values new-pred subs*))
+ (_ (values (predicate:list pred* rest-pred) subs*))))))))
;; Substitution always succeeds and returns a substitution to be
;; carried forward in the inference process.
(('substitute a b)