From: Mark Thom Date: Mon, 1 Mar 2021 01:56:24 +0000 (-0700) Subject: suppress tabled/2 existence errors in tabling library, do not print evaluation errors... X-Git-Tag: v0.9.0~149 X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=6079402dc44fa2e7f62a7ba168c45b06890fa1d0;p=scryer-prolog.git suppress tabled/2 existence errors in tabling library, do not print evaluation errors generated by term and goal expansion in loader.pl --- diff --git a/src/lib/tabling/wrapper.pl b/src/lib/tabling/wrapper.pl index d2d13901..7925a667 100644 --- a/src/lib/tabling/wrapper.pl +++ b/src/lib/tabling/wrapper.pl @@ -95,10 +95,15 @@ rename((Head --> Body), (NewHead --> Body), Module) :- !, functor(Head, Name, Arity), PlainArity is Arity+1, functor(PlainHead, Name, PlainArity), - table_wrapper:tabled(PlainHead, Module), + catch(table_wrapper:tabled(PlainHead, Module), + error(existence_error(procedure, tabled/2), _), + false), rename_term(Head, NewHead). rename(Head, NewHead, Module) :- - table_wrapper:tabled(Head, Module), !, + catch(table_wrapper:tabled(Head, Module), + error(existence_error(procedure, tabled/2), _), + false), + !, rename_term(Head, NewHead). rename_term(Compound0, Compound) :- diff --git a/src/loader.pl b/src/loader.pl index 8a409ce2..8f1ef7e4 100644 --- a/src/loader.pl +++ b/src/loader.pl @@ -18,7 +18,9 @@ '$print_message_and_fail'(Error) :- - ( Error = error(existence_error(procedure, Expansion), Expansion) -> + ( ( Error = error(existence_error(procedure, Expansion), Expansion) + ; Error = error(evaluation_error((_:_)/_),Expansion) + ) -> ( ( Expansion = goal_expansion/2 ; Expansion = term_expansion/2 ) ->