fix abolish bug

git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2252 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
vsc 2008-06-02 17:20:28 +00:00
parent ade7b34d49
commit 8e6403794f
4 changed files with 11 additions and 7 deletions

View File

@ -11,8 +11,11 @@
* File: cdmgr.c *
* comments: Code manager *
* *
* Last rev: $Date: 2008-05-28 17:18:35 $,$Author: vsc $ *
* Last rev: $Date: 2008-06-02 17:20:28 $,$Author: vsc $ *
* $Log: not supported by cvs2svn $
* Revision 1.229 2008/05/28 17:18:35 vsc
* thread fixes
*
* Revision 1.228 2008/04/28 23:02:32 vsc
* fix bug in current_predicate/2
* fix bug in c_interface.
@ -3083,7 +3086,7 @@ p_kill_dynamic(void)
return (FALSE);
}
pe->cs.p_code.LastClause = pe->cs.p_code.FirstClause = NULL;
pe->OpcodeOfPred = FAIL_OPCODE;
pe->OpcodeOfPred = UNDEF_OPCODE;
pe->cs.p_code.TrueCodeOfPred = pe->CodeOfPred = (yamop *)(&(pe->OpcodeOfPred));
pe->PredFlags = pe->PredFlags & GoalExPredFlag;
UNLOCK(pe->PELock);

View File

@ -17,6 +17,8 @@
<h2>Yap-5.1.3:</h2>
<ul>
<li> FIXED: abolish_dynamic should drop FAIL_OP (obs from N
Angelopoulos).</li>
<li> FIXED: cygiwn should ignore SWI console (obs from A N Saravanaraj).</li>
<li> FIXED: avoid null pointer (obs from Nicos Angelopoulos).</li>
<li> FIXED: do not allow duplicate values in rbtrees (obs from Jan

View File

@ -16,7 +16,6 @@
*************************************************************************/
:- module(system, [
chmod/2,
datime/1,
delete_file/1,
delete_file/2,

View File

@ -604,16 +604,16 @@ source_module(Mod) :-
%
% get rid of a module and of all predicates included in the module.
%
abolish_module(Mod) :-
'$current_predicate'(Mod,Na,Ar),
abolish(Mod:Na/Ar),
fail.
abolish_module(Mod) :-
recorded('$module','$module'(_,Mod,_),R), erase(R),
fail.
abolish_module(Mod) :-
recorded('$import','$import'(Mod,_,_,_,_,_),R), erase(R),
fail.
abolish_module(Mod) :-
'$current_predicate'(Mod,Na,Ar),
abolish(Mod:Na/Ar),
fail.
abolish_module(_).
'$reexport'(ModuleSource, Spec, Module) :-