Next: , Previous: , Up: Warnings about possible incorrectness   [Contents][Index]


11.10.1.5 Warnings about possible goal incorrectness


--no-warn-simple-code

Do not warn about constructs which are so simple that they are likely to be programming errors. (One example is if-then-elses whose condition always succeeds.)


--no-warn-singleton-variables
--no-warn-singleton-vars

Do not warn about variables which only occur once in a clause, but whose names do not start with an underscore.


--no-warn-repeated-singleton-variables
--no-warn-repeated-singleton-vars

Do not warn about variables which occur more than once in a clause, but whose names do start with an underscore.


--no-warn-unification-cannot-succeed

Do not warn about unifications which cannot succeed.


--no-warn-known-bad-format-calls

Do not warn about calls to string.format, io.format, or stream.string_writer.format that contain mismatches between the format string and the supplied values.


--no-warn-obsolete

Do not warn about calls to predicates and functions that have been marked as obsolete.


--no-warn-overlapping-scopes

Do not warn about variables which occur in overlapping scopes.


--no-warn-suspected-occurs-check-failure
--no-warn-suspected-occurs-failure

Do not warn about code that looks like it unifies a variable with a term that contains that same variable. Such code cannot succeed because it fails the test called the occurs check.


--warn-suspicious-recursion

Warn about recursive calls which are likely to have problems, such as leading to infinite recursion.


--warn-unused-args

Warn about predicate or function arguments which are not used.


--no-warn-unneeded-purity-indicator

Do not warn about purity indicators on goals that specify a purity level that is less pure than the declaration of the called predicate or function.


--no-warn-missing-state-var-init

Do not print warnings about state variables that are initialized on some but not all paths through a disjunction or if-then-else.


--no-warn-moved-trace-goal

Do not print warning about trace goals that were moved after goals that follow them in the text of the program. Such reordering may mean that the trace goal will not be executed if the goal moved before it fails, and even if it does get executed, it may be executed in a different context than the one expected by the programmer.


--no-warn-disj-fills-partial-inst

Do not print warnings about disjunctions that further instantiate some variables that enter the disjunction in a partially-instantiated state. While such disjunctions work fine in most contexts, if they constitute the body of a predicate or a function, that predicate or function will not work when passed to an all-solutions predicate. This is because while the solutions that the different disjuncts in the disjunction can generate distinct values for the affected variables, those values will be represented as terms that have the exact same address, namely the address of the initial partially-instantiated term. This fact will lead the all-solutions predicate to consider them to be the *same* solution.


--no-warn-unknown-warning-name

Do not report unknown warning names in the list of warnings to disable in disable_warning(s) scopes.


Next: , Previous: , Up: Warnings about possible incorrectness   [Contents][Index]