[m-dev.] cc_multi bug
Ian MacLarty
maclarty at cs.mu.OZ.AU
Tue Jan 18 15:44:41 AEDT 2005
Hi,
When I try to compile the following program I get the error:
cc.m:030: Error: call to predicate `p/1' with determinism `cc_multi' occurs in
cc.m:030: a context which requires all solutions.
:- module cc.
:- interface.
:- import_module io.
:- pred main(io::di, io::uo) is det.
:- implementation.
:- import_module int.
main(!IO) :-
(
q(0, _)
->
io.write_string("yes\n", !IO)
;
io.write_string("no\n", !IO)
).
:- pred p(int::out) is cc_multi.
p(1).
p(2).
:- pred q(int::in, int::out) is cc_nondet.
q(X, Y) :-
p(Y),
X > 0.
However if I swap the goals in the conjunction in the body of q/2 around
it compiles fine.
Is this a known issue or should I log a bug?
Ian.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list