From 5153251eaa86eaa574105621b13e3738e7db11e5 Mon Sep 17 00:00:00 2001
From: Francois-Rene Rideau <fare@tunes.org>
Date: Mon, 6 Mar 2017 23:25:21 -0500
Subject: [PATCH] Use NIL for actions visited with status unknown

Use NIL instead of T as the status stored in the visited-actions hash-table
when the status is unknown, and check whether it (or a known status) is present
using the second value of GETHASH. When a known value is sought, keep checking
for the first value.
---
 plan.lisp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/plan.lisp b/plan.lisp
index 6d85bac19..d959d3bc0 100644
--- a/plan.lisp
+++ b/plan.lisp
@@ -468,8 +468,8 @@ Update the VISITED-ACTIONS table with the known status, but don't add anything t
     (when (action-valid-p operation component)
       (while-visiting-action (operation component) ; maintain context, handle circularity.
         (let ((action (make-action operation component)))
-          (unless (gethash action (visited-actions *asdf-session*))
-            (setf (gethash action (visited-actions *asdf-session*)) t)
+          (unless (nth-value 1 (gethash action (visited-actions *asdf-session*)))
+            (setf (gethash action (visited-actions *asdf-session*)) nil)
             (when (and (typep component (plan-component-type plan))
                        (not (action-forced-not-p (forcing plan) operation component)))
               (map-direct-dependencies operation component
-- 
GitLab