Table of Contents
Previous: -calltree
Option: check
-check
This switch is provided
so that errors and warning messages can be turned off when ftnchek is
used for purposes other than finding bugs, such as making declarations
or printing the call tree. It is positional, so after turning all checks
off, selected checks can be turned back on. The effect of -nocheck is
to put all switches, numeric settings, and settings controlling lists
of warnings to their turn-off values, as if they had all been specified
with the -no prefix. Switches and settings that specify options and modes
of operation, rather than controlling warnings, are unaffected. These are
-columns , -crossref , -include , -intrinsic , -library , -list , -makedcls ,
-novice , -output , -pointersize , -project , -quiet , -reference , -resources
, -sort , -source , -symtab , -vcg , -version , -wordsize , and -wrap . Default
= yes.
Parse errors (syntax errors due to unrecognized or malformed statements)
are not suppressed by this switch, since the results may be incorrect
if ftnchek has not parsed the program correctly.
There are some miscellaneous
errors and warning messages that are not controlled by any other switch,
and so can be turned off only by this switch. Note that using -check following
-nocheck only has the effect of turning these special warnings back on,
and does not restore all the checks it turned off. These warnings are:
- Module contains no executable statements.
- In free source form, missing
space where space is required (e.g. between a keyword and an identifier)
or space present where none is allowed (e.g. within an identifier).
- Zero
or negative length specification in a data type declaration of the form
type*len.
- Array assigned to scalar.
- Type mismatch between DO index
and bounds.
- Undefined common block declared in SAVE statement.
- Intrinsic
function explicitly declared with an incompatible type.
- Unknown intrinsic
function explicitly declared in an INTRINSIC statement.
- Intrinsic function
passed as a subprogram argument is not declared in an INTRINSIC statement.
- Intrinsic function or statement function invoked incorrectly.
- Function
does not set return value prior to RETURN statement.
- Parameter constant
value not evaluated (this is ftnchek 's fault, and it is just informing
you of the fact).
- Entry point of a subprogram is later used as a different
subprogram's name.
- Unknown keyword used in an I/O statement.
- Illegal
label reference (e.g. GOTO refers to a non-executable statement; I/O statement
refers to a non-format statement).
See also: -errors .
Next: -columns