throw permission_error in compile_assert when attempting to assert a built-in (#1872)

This commit is contained in:
Mark
2023-07-13 15:03:26 -06:00
parent a9cb826bf3
commit 12f890e4a2
4 changed files with 31 additions and 20 deletions

View File

@@ -4919,11 +4919,19 @@ impl Machine {
self.machine_st.p = self.machine_st.cp;
}
&Instruction::CallBuiltInProperty => {
self.builtin_property();
let key = self
.machine_st
.read_predicate_key(self.machine_st.registers[1], self.machine_st.registers[2]);
self.machine_st.fail = !self.indices.builtin_property(key);
step_or_fail!(self, self.machine_st.p += 1);
}
&Instruction::ExecuteBuiltInProperty => {
self.builtin_property();
let key = self
.machine_st
.read_predicate_key(self.machine_st.registers[1], self.machine_st.registers[2]);
self.machine_st.fail = !self.indices.builtin_property(key);
step_or_fail!(self, self.machine_st.p = self.machine_st.cp);
}
&Instruction::CallMetaPredicateProperty => {