loopcheck.m:011: Warning: the determinism declaration for predicate `main'/2 loopcheck.m:011: could be tighter. loopcheck.m:011: Declared `det', inferred `erroneous'. loopcheck.m:020: Error: `:- pragma loop_check' declarations are not allowed for loopcheck.m:020: procedures with determinism `erroneous'. loopcheck.m:020: This pragma is valid only for the following determinisms: loopcheck.m:020: cc_multi, cc_nondet, det, multi, nondet and semidet. loopcheck.m:023: Warning: recursive call to predicate `loop'/1 will lead to loopcheck.m:023: infinite recursion. loopcheck.m:023: If this recursive call is executed, the procedure will call loopcheck.m:023: itself with exactly the same input arguments, leading to loopcheck.m:023: infinite recursion.