From 0026f3fdef150bd54719c2215c0f68bc64877a5b Mon Sep 17 00:00:00 2001 From: Markus Triska Date: Wed, 1 Dec 2021 20:54:06 +0100 Subject: [PATCH 1/2] use anonymous variable --- src/lib/builtins.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/builtins.pl b/src/lib/builtins.pl index eace0865..e3bd22a6 100644 --- a/src/lib/builtins.pl +++ b/src/lib/builtins.pl @@ -954,7 +954,7 @@ retract_module_clause(Head, Body, Module) :- ). -first_match_index([Clause | Clauses], Clause, N, N) :- +first_match_index([Clause | _], Clause, N, N) :- !. first_match_index([_ | Clauses], Clause, N0, N) :- N1 is N0 + 1, From 48cea6efdfd17b5661cec5c04813889c5bac744f Mon Sep 17 00:00:00 2001 From: Markus Triska Date: Wed, 1 Dec 2021 20:58:38 +0100 Subject: [PATCH 2/2] FIXED: retract/1 issues due to module qualification This addresses #1125. --- src/lib/builtins.pl | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/lib/builtins.pl b/src/lib/builtins.pl index e3bd22a6..00a26238 100644 --- a/src/lib/builtins.pl +++ b/src/lib/builtins.pl @@ -998,14 +998,14 @@ retract_clause(Head, Body) :- :- meta_predicate retract(0). -retract(Clause) :- - ( Clause \= (_ :- _) -> - Head = Clause, - Body = true, - retract_clause(Head, Body) - ; Clause = (Head :- Body) -> - retract_clause(Head, Body) - ). +retract(Clause0) :- + strip_module(Clause0, Module, Clause), + ( Clause = (Head :- Body) -> + true + ; Head = Clause, + Body = true + ), + retract_clause(Module:Head, Body). :- meta_predicate retractall(0).