fix module change over meta-calls (partially)

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@216 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc
2001-12-07 16:32:36 +00:00
parent 443a795472
commit f46101a01a
3 changed files with 12 additions and 16 deletions

View File

@@ -11155,8 +11155,8 @@ absmi(int inp)
if (pen->PredFlags & MetaPredFlag) {
if (f == FunctorModule) {
Term tmod = LookupModule(ArgOfTerm(1,d0));
if (!IsVarTerm(tmod) && IsAtomTerm(tmod)) {
mod = LookupModule(tmod);
if (!IsVarTerm(tmod) && IsAtomTerm(tmod) &&
LookupModule(tmod) == mod) {
d0 = ArgOfTerm(2,d0);
goto execute_nvar;
}
@@ -11278,8 +11278,8 @@ absmi(int inp)
if (f == FunctorModule) {
Term tmod;
tmod = ArgOfTerm(1,d0);
if (!IsVarTerm(tmod) && IsAtomTerm(tmod)) {
mod = LookupModule(tmod);
if (!IsVarTerm(tmod) && IsAtomTerm(tmod) &&
mod == LookupModule(tmod)) {
d0 = ArgOfTerm(2,d0);
goto execute_within_nvar;
}
@@ -11422,8 +11422,8 @@ absmi(int inp)
if (pen->PredFlags & MetaPredFlag) {
if (f == FunctorModule) {
Term tmod = ArgOfTerm(1,d0);
if (!IsVarTerm(tmod) && IsAtomTerm(tmod)) {
mod = LookupModule(tmod);
if (!IsVarTerm(tmod) && IsAtomTerm(tmod) &&
mod == LookupModule(tmod)) {
d0 = ArgOfTerm(2,d0);
goto last_execute_within_nvar;
}