Skip to content

lint command ​

Report bug-prone, obsolescent and non-portable Fortran constructs and parallel-code defects (OpenMP, OpenACC, MPI).

bash
fobis lint [PATHS...] [options]

How to use it, with examples: Code quality.

All options ​

Arguments: PATHS...

OptionValueDefaultDescription
--fobos, -fTEXTSpecify a "fobos" file named differently from "fobos"
--fciAssume fobos inputs as case insensitive
--modeTEXTSelect a mode defined into a fobos file
--src, -sTEXTRoot-directory of source files [default: ./]
--selectTEXTRule ids or prefixes to run (repeatable, comma-separated; 'ALL' for every rule). Replaces the default set.
--ignoreTEXTRule ids or prefixes to skip (repeatable, comma-separated).
--formatTEXTtextOutput format: text, json, sarif or github.
--baselineTEXTBaseline file: findings recorded there are not reported.
--update-baselineRecord all current findings into the baseline file and exit.
--compiler-feedbackTEXTBuild log with compiler optimisation reports (nvfortran -Minfo, gfortran -fopt-info); '-' reads stdin.
--diffPrint the automatic fixes as a unified diff; change nothing.
--fixApply the automatic fixes to the files, then report what remains.
--exit-zeroExit 0 even when findings are reported.
--list-rulesList every rule and exit.
--explainTEXTExplain a rule (by id) and exit.
--deepReview the findings with the LLM, region by region: a cited verdict per finding (confirmed, dismissed, uncertain) and advisory concerns. Nothing is hidden; the exit status is unchanged.
--deep-maxINTEGER10Review at most this many regions (most severe first).
--deep-contextWith --deep or --ask: print what the model would receive, run no model.
--askTEXTAsk a question about the code around FILE:LINE (given as the path), answered with citations.
--varsetTEXTApply one or more [varset:NAME] sections' $variable bindings before linting.