Next: , Previous: Auxiliary output options, Up: Invocation   [Contents][Index]


9.6 Language semantics options

See the Mercury language reference manual for detailed explanations of these options.

--no-reorder-conj

Execute conjunctions left-to-right except where the modes imply that reordering is unavoidable.


--no-reorder-disj

Execute disjunctions strictly left-to-right.


--no-fully-strict

Allow infinite loops or goals with determinism erroneous to be optimised away.


--allow-stubs

Allow procedures to have no clauses. Any calls to such procedures will raise an exception at run-time. This option is sometimes useful during program development. (See also the documentation for the ‘--warn-stubs’ option in Warning options.)


--infer-all

An abbreviation for ‘--infer-types --infer-modes --infer-det’.


--infer-types

If there is no type declaration for a predicate or function, try to infer the type, rather than just reporting an error.


--infer-modes

If there is no mode declaration for a predicate, try to infer the modes, rather than just reporting an error.


--no-infer-det
--no-infer-determinism

If there is no determinism declaration for a procedure, don’t try to infer the determinism, just report an error.


--type-inference-iteration-limit n

Perform at most n passes of type inference (default: 60).


--mode-inference-iteration-limit n

Perform at most n passes of mode inference (default: 30).


Next: , Previous: Auxiliary output options, Up: Invocation   [Contents][Index]