recognise discontiguous flag
This commit is contained in:
parent
d46bef3adb
commit
abe1168b1d
13
C/cdmgr.c
13
C/cdmgr.c
@ -1464,9 +1464,10 @@ PredEntry *Yap_PredFromClause(Term t USES_REGS) {
|
||||
bool Yap_discontiguous(PredEntry *ap, Term mode USES_REGS) {
|
||||
register consult_obj *fp;
|
||||
|
||||
if (ap->PredFlags & (DiscontiguousPredFlag|MultiFileFlag))
|
||||
if (ap->PredFlags & (DiscontiguousPredFlag | MultiFileFlag) ||
|
||||
falseGlobalPrologFlag(DISCONTIGUOUS_WARNINGS_FLAG))
|
||||
return false;
|
||||
if (mode != TermConsult && mode != TermReconsult)
|
||||
if ((mode != TermConsult && mode != TermReconsult))
|
||||
return false;
|
||||
if (!LOCAL_ConsultSp) {
|
||||
return false;
|
||||
@ -1503,18 +1504,18 @@ static Int
|
||||
Term mod = Deref(ARG3);
|
||||
|
||||
if (IsVarTerm(t))
|
||||
return (FALSE);
|
||||
return false;
|
||||
if (IsAtomTerm(t))
|
||||
at = AtomOfTerm(t);
|
||||
else
|
||||
return (FALSE);
|
||||
return false;
|
||||
t = Deref(ARG2);
|
||||
if (IsVarTerm(t))
|
||||
return (FALSE);
|
||||
return false;
|
||||
if (IsIntTerm(t))
|
||||
arity = IntOfTerm(t);
|
||||
else
|
||||
return FALSE;
|
||||
return false;
|
||||
if (arity == 0)
|
||||
pe = RepPredProp(PredPropByAtom(at, mod));
|
||||
else
|
||||
|
Reference in New Issue
Block a user