]> Repositorios git - scryer-prolog.git/commitdiff
do not create attributed variables for ground tuples
authorMarkus Triska <[email protected]>
Tue, 11 Apr 2023 19:24:34 +0000 (21:24 +0200)
committerMarkus Triska <[email protected]>
Tue, 11 Apr 2023 19:26:18 +0000 (21:26 +0200)
src/lib/clpz.pl

index 2c412ac390f0c11dfc786dc2d499936ff03dbeca..daed1471b8ac1aa0b225e75fcab2348f44f1c948 100644 (file)
@@ -4369,9 +4369,11 @@ tuple_domain([T|Ts], Relation0) -->
         tuple_domain(Ts, Relation1).
 
 tuple_freeze(Tuple, Relation) :-
-        put_attr(R, clpz_relation, Relation),
-        make_propagator(rel_tuple(R, Tuple), Prop),
-        tuple_freeze_(Tuple, Prop).
+        (   ground(Tuple) -> true
+        ;   put_attr(R, clpz_relation, Relation),
+            make_propagator(rel_tuple(R, Tuple), Prop),
+            tuple_freeze_(Tuple, Prop)
+        ).
 
 tuple_freeze_([], _).
 tuple_freeze_([T|Ts], Prop) :-