]> Repositorios git - scryer-prolog.git/commitdiff
remove no longer needed clpz_relation attributes
authorMarkus Triska <[email protected]>
Tue, 11 Apr 2023 19:16:02 +0000 (21:16 +0200)
committerMarkus Triska <[email protected]>
Tue, 11 Apr 2023 19:26:18 +0000 (21:26 +0200)
src/lib/clpz.pl

index 588c3b372079e81925a8aec0d67318a1213efdff..ab0421523d1cf5d2f6aacb95fe03bcccd2548a60 100644 (file)
@@ -4490,14 +4490,20 @@ run_propagator(pgeq(A,B), MState) -->
 
 run_propagator(rel_tuple(R, Tuple), MState) -->
         { get_attr(R, clpz_relation, Relation) },
-        (   { ground(Tuple) } -> kill(MState), { memberchk(Tuple, Relation) }
+        (   { ground(Tuple) } ->
+            kill(MState),
+            { del_attr(R, clpz_relation),
+              memberchk(Tuple, Relation) }
         ;   { relation_unifiable(Relation, Tuple, Us, false, Changed),
               Us = [_|_] },
             (   { Tuple = [First,Second], ( ground(First) ; ground(Second) ) } ->
                 kill(MState)
             ;   []
             ),
-            (   { Us = [Single] } -> kill(MState), Single = Tuple
+            (   { Us = [Single] } ->
+                kill(MState),
+                { del_attr(R, clpz_relation) },
+                Single = Tuple
             ;   { Changed } ->
                 { put_attr(R, clpz_relation, Us),
                 disable_queue },