fix use of in/2 (could conflict with autoloader's clpfd).

This commit is contained in:
Vítor Santos Costa 2010-05-27 12:02:52 +01:00
parent 380fd692d9
commit 215581ffc8

View File

@ -17,6 +17,8 @@
:- module(attributes, [op(1150, fx, attribute)]).
:- use_module(library(lists), [member/2]).
:- multifile
user:goal_expansion/3.
:- multifile
@ -26,7 +28,7 @@
:- dynamic modules_with_attributes/1.
:- dynamic attributed_module/3.
modules_with_attributes([prolog]).
modules_with_attributes([]).
%
% defining a new attribute is just a question of establishing a
@ -172,15 +174,11 @@ process_goals(G.Goals, G.NGoals, Do) :-
find_used([],_,L,L).
find_used([M|Mods],Mods0,L0,Lf) :-
in(M,Mods0), !,
member(M,Mods0), !,
find_used(Mods,Mods0,[M|L0],Lf).
find_used([_|Mods],Mods0,L0,Lf) :-
find_used(Mods,Mods0,L0,Lf).
in(X,[X|_]).
in(X,[_|L]) :-
in(X,L).
do_verify_attributes([], _, _, []).
do_verify_attributes([Mod|Mods], AttVar, Binding, [Mod:Goal|Goals]) :-
current_predicate(verify_attributes,Mod:verify_attributes(_,_,_)), !,