From: Mark Thom Date: Sun, 10 Feb 2019 18:14:06 +0000 (-0700) Subject: cut when finished verify_attributes/3 calls X-Git-Tag: v0.8.110~264 X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=3a340ed01cd6fd14ca05fdaa756db2e04d20618a;p=scryer-prolog.git cut when finished verify_attributes/3 calls --- diff --git a/src/prolog/machine/attributed_variables.pl b/src/prolog/machine/attributed_variables.pl index dfadfb20..c72c9e24 100644 --- a/src/prolog/machine/attributed_variables.pl +++ b/src/prolog/machine/attributed_variables.pl @@ -1,6 +1,7 @@ driver(Vars, Values) :- iterate(Vars, Values, ListOfListsOfGoalLists), - '$redo_attr_var_bindings', %% the bindings list is emptied here. + '$redo_attr_var_bindings', % the bindings list is emptied here. + !, call_goals(ListOfListsOfGoalLists), '$restore_p_from_sfcp'. @@ -13,7 +14,7 @@ iterate([], [], []). call_verify_attributes(Attrs, _, _, []) :- var(Attrs), !. call_verify_attributes([Attr|Attrs], Var, Value, [Goals|ListOfGoalLists]) :- - '$module_of'(M, Attr), % write the owning module Attr to M. + '$module_of'(M, Attr), % write the owning module of Attr to M. catch(M:verify_attributes(Var, Value, Goals), error(evaluation_error((M:verify_attributes)/3), verify_attributes/3), Goals = []),