generalize simple goal detection to fix call/N test failures in logtalk test suite

This commit is contained in:
Mark
2023-07-15 19:29:06 -06:00
parent 5a7da721cd
commit 65a8ce8e22

View File

@@ -1433,10 +1433,15 @@ impl Machine {
post_supp_args post_supp_args
.zip(supp_vars.iter()) .zip(supp_vars.iter())
.all(|(arg_term, supp_var)| { .all(|(arg_term, supp_var)| {
let arg_term = self.machine_st.store(self.machine_st.deref(arg_term)); let (module_loc, arg_term) = self.machine_st.strip_module(
arg_term,
heap_loc_as_cell!(0),
);
if arg_term.is_var() && supp_var.is_var() { if module_loc.is_var() || module_loc == atom_as_cell!(atom!("user")) {
return arg_term == *supp_var; if arg_term.is_var() && supp_var.is_var() {
return arg_term == *supp_var;
}
} }
false false