Next: , Previous: , Up: Invocation   [Contents][Index]


9.2 Warning options

-w
--inhibit-warnings

Disable all warning messages.


--halt-at-warn

This option causes the compiler to treat all warnings as if they were errors. This means that if any warning is issued, the compiler will not generate code — instead, it will return a non-zero exit status.


--halt-at-syntax-error

This option causes the compiler to halt immediately after syntax checking and not do any semantic checking if it finds any syntax errors in the program.


--inhibit-accumulator-warnings

Do not warn about argument order rearrangement caused by ‘--introduce-accumulators’.


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

Do not warn about variables which only occur once.


--no-warn-missing-det-decls

For predicates that are local to a module (those that are not exported), don’t issue a warning if the ‘pred’ or ‘mode’ declaration does not have a determinism annotation. Use this option if you want the compiler to perform automatic determinism inference for non-exported predicates.


--no-warn-det-decls-too-lax

Do not warn about determinism declarations which could have been stricter.


--no-warn-inferred-erroneous

Do not warn about procedures whose determinism is inferred erroneous but whose determinism declarations are laxer.


--no-warn-insts-without-matching-type

Do not warn about insts that are not consistent with any types in scope.


--warn-unused-imports

Warn about modules that are imported but not used.


--no-warn-nothing-exported

Do not warn about modules whose interface sections have no exported predicates, functions, insts, modes or types.


--warn-unused-args

Warn about predicate or function arguments which are not used.


--no-warn-interface-imports

Do not warn about modules imported in the interface which are not used in the interface.


--warn-interface-imports-in-parents

Warn about modules imported in the interface a parent module which are not used in the interface of that module.


--warn-missing-opt-files

Warn about ‘.opt’ files that cannot be opened.


--warn-missing-trans-opt-files

Warn about ‘.trans_opt’ files that cannot be opened.


--no-warn-non-contiguous-clauses

Do not generate a warning if the clauses of a predicate or function are not contiguous.


--warn-non-contiguous-foreign-procs

Generate a warning if the clauses and foreign_procs of a predicate or function are not contiguous.


--warn-non-stratification

Warn about possible non-stratification of the predicates and/or functions in the module. Non-stratification occurs when a predicate or function can call itself negatively through some path along its call graph.


--no-warn-simple-code

Disable warnings about constructs which are so simple that they are likely to be programming errors.


--warn-duplicate-calls

Warn about multiple calls to a predicate with the same input arguments.


--no-warn-missing-module-name

Disable warnings for modules that do not start with a ‘:- module’ declaration.


--no-warn-wrong-module-name

Disable warnings for modules whose ‘:- module’ declaration does not match the module’s file name.


--no-warn-smart-recompilation

Disable warnings from the smart recompilation system.


--no-warn-undefined-options-vars
--no-warn-undefined-options-variables

Do not warn about references to undefined variables in options files with ‘--make’.


--warn-non-tail-recursion

Warn about any directly recursive calls that are not tail recursive.


--no-warn-target-code

Disable warnings from the compiler used to process the target code (e.g. gcc).


--no-warn-up-to-date

Do not warn if targets specified on the command line with ‘--make’ are already up-to-date.


--no-warn-stubs

Disable warnings about procedures for which there are no clauses. Note that this option only has any effect if the ‘--allow-stubs’ option (see Language semantics options) is enabled.


--warn-dead-procs

Warn about procedures which are never called.


--warn-dead-preds

Warn about predicates that have no procedures which are ever called.


--no-warn-table-with-inline

Disable warnings about tabled procedures that also have a ‘pragma inline’ declaration.


--no-warn-non-term-special-preds

Do not warn about types that have user-defined equality or comparison predicates that cannot be proved to terminate. This option is only enabled when termination analysis is enabled. (See Termination analysis options for further details).


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

Do not warn about calls to string.format or io.format that the compiler knows for sure contain mismatches between the format string and the supplied values.


--no-warn-only-one-format-string-error

If a format string has more than one mismatch with the supplied values, generate a warning for all mismatches, not just the first. The later mismatches may be avalanche errors caused by earlier mismatches.


--warn-unknown-format-calls

Warn about calls to string.format or io.format for which the compiler cannot tell whether there are any mismatches between the format string and the supplied values.


--no-warn-obsolete

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


--inform-ite-instead-of-switch

Generate informational messages for if-then-elses that could be replaced by switches.


--no-warn-unresolved-polymorphism

Do not warn about unresolved polymorphism.


--warn-suspicious-foreign-procs

Warn about possible errors in the bodies of foreign procedures. When enabled, the compiler attempts to determine whether the success indicator for a foreign procedure is correctly set, and whether the foreign procedure body contains operations that are not allowed (for example, return statements in a C foreign procedure). Note that since the compiler’s ability to parse foreign language code is limited some warnings reported by this option may be spurious and some actual errors may not be detected at all.


--no-warn-state-var-shadowing

Do not warn about one state variable shadowing another.


--no-inform-inferred

Do not generate messages about inferred types or modes.


--no-inform-inferred-types

Do not generate messages about inferred types.


--no-inform-inferred-modes

Do not generate messages about inferred modes.


Next: , Previous: , Up: Invocation   [Contents][Index]