tag(fun1, bug(1)). tag(fun2, bug(2)). call(fun1, fun2). warning(X, Y, no):- call(X, Y), tag(Y, bug(Z)), not tag(X, bug(Z)), no=Z. %:- call(X, Y), tag(Y, bug(Z)), not tag(X, bug(Z)). %#show warning/3.