From 813da880d2d77f04ea623f426d543d298528f967 Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Sat, 30 Jun 2018 21:35:15 +0100 Subject: [PATCH] dep.lisp (%dep-value): Force the dep before registering a dependents. Otherwise we'll add the dependent to the list, and then `propagate-to- dependents' will clear the list, forgetting about us. --- dep.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dep.lisp b/dep.lisp index c437538..3a1520f 100644 --- a/dep.lisp +++ b/dep.lisp @@ -229,10 +229,10 @@ (defun %dep-value (dep) "Do the difficult work of retrieving the current value of a DEP." + (force-dep-value dep) (when *evaluating-dep* (pushnew (dep-weak-pointer *evaluating-dep*) (dep-dependents dep)) - (pushnew dep (dep-dependencies *evaluating-dep*))) - (force-dep-value dep)) + (pushnew dep (dep-dependencies *evaluating-dep*)))) (export 'dep-value) (declaim (inline dep-value)) -- 2.11.0