Summary: No need to keep more than one version + next version around. Reviewed By: skcho Differential Revision: D26544299 fbshipit-source-id: 1aff562cfmaster
parent
2e359f8aef
commit
e8dc75f92a
@ -1,810 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:48 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-analyze</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-analyze</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#BIABDUCTION CHECKER OPTIONS">BIABDUCTION CHECKER OPTIONS</a><br>
|
|
||||||
<a href="#BUCK FLAVORS OPTIONS">BUCK FLAVORS OPTIONS</a><br>
|
|
||||||
<a href="#BUFFER OVERRUN OPTIONS">BUFFER OVERRUN OPTIONS</a><br>
|
|
||||||
<a href="#CLANG OPTIONS">CLANG OPTIONS</a><br>
|
|
||||||
<a href="#JAVA OPTIONS">JAVA OPTIONS</a><br>
|
|
||||||
<a href="#QUANDARY CHECKER OPTIONS">QUANDARY CHECKER OPTIONS</a><br>
|
|
||||||
<a href="#RACERD CHECKER OPTIONS">RACERD CHECKER OPTIONS</a><br>
|
|
||||||
<a href="#SIOF CHECKER OPTIONS">SIOF CHECKER OPTIONS</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-analyze -
|
|
||||||
analyze the files captured by infer</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
analyze</b> <i>[options]</i> <b><br>
|
|
||||||
infer</b> <i>[options]</i></p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Analyze the
|
|
||||||
files captured in the project results directory and
|
|
||||||
report.</p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--annotation-reachability</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: the annotation
|
|
||||||
reachability checker. Given a pair of source and sink
|
|
||||||
annotation, e.g. @PerformanceCritical and @Expensive, this
|
|
||||||
checker will warn whenever some method annotated with
|
|
||||||
@PerformanceCritical calls, directly or indirectly, another
|
|
||||||
method annotated with @Expensive (Conversely:
|
|
||||||
<b>--no-annotation-reachability</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--annotation-reachability-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--annotation-reachability</b> and disable all other
|
|
||||||
checkers (Conversely:
|
|
||||||
<b>--no-annotation-reachability-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-biabduction</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: the separation
|
|
||||||
logic based bi-abduction analysis using the checkers
|
|
||||||
framework (Conversely: <b>--biabduction</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--biabduction-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--biabduction</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-biabduction-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--bufferoverrun</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: the buffer overrun
|
|
||||||
analysis (Conversely: <b>--no-bufferoverrun</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--bufferoverrun-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--bufferoverrun</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-bufferoverrun-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--changed-files-index</b>
|
|
||||||
<i>file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the file containing the
|
|
||||||
list of source files from which reactive analysis should
|
|
||||||
start. Source files should be specified relative to project
|
|
||||||
root or be absolute</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--class-loads</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Java class loading
|
|
||||||
analysis (Conversely: <b>--no-class-loads</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--class-loads-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--class-loads</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-class-loads-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--continue</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Continue the capture
|
|
||||||
for the reactive analysis, increasing the changed
|
|
||||||
files/procedures. (If a procedure was changed beforehand,
|
|
||||||
keep the changed marking.) (Conversely:
|
|
||||||
<b>--no-continue</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--cost</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: checker for
|
|
||||||
performance cost analysis (Conversely: <b>--no-cost</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--cost-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable <b>--cost</b>
|
|
||||||
and disable all other checkers (Conversely:
|
|
||||||
<b>--no-cost-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--custom-symbols</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify named lists of symbols
|
|
||||||
available to rules</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug</b>,<b>-g</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode (also
|
|
||||||
sets <b>--debug-level 2</b>, <b>--developer-mode</b>,
|
|
||||||
<b>--no-filtering</b>, <b>--print-buckets</b>,
|
|
||||||
<b>--print-types</b>, <b>--reports-include-ml-loc</b>,
|
|
||||||
<b>--no-only-cheap-debug</b>, <b>--trace-error</b>,
|
|
||||||
<b>--write-dotty</b>, <b>--write-html</b>) (Conversely:
|
|
||||||
<b>--no-debug</b> | <b>-G</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level</b>
|
|
||||||
<i>level</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level (sets
|
|
||||||
<b>--bo-debug</b> <i>level</i>,
|
|
||||||
<b>--debug-level-analysis</b> <i>level</i>,
|
|
||||||
<b>--debug-level-capture</b> <i>level</i>,
|
|
||||||
<b>--debug-level-linters</b> <i>level</i>):</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- 0: only basic debugging
|
|
||||||
enabled <br>
|
|
||||||
- 1: verbose debugging enabled <br>
|
|
||||||
- 2: very verbose debugging enabled <b><br>
|
|
||||||
--debug-level-analysis</b> <i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the analysis.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-capture</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the capture.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-default-checkers</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Default checkers:
|
|
||||||
<b>--biabduction</b>, <b>--fragment-retains-view</b>,
|
|
||||||
<b>--inefficient-keyset-iterator</b>, <b>--linters</b>,
|
|
||||||
<b>--liveness</b>, <b>--racerd</b>, <b>--siof</b>,
|
|
||||||
<b>--starvation</b>, <b>--uninit</b> (Conversely:
|
|
||||||
<b>--default-checkers</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--eradicate</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: the eradicate
|
|
||||||
@Nullable checker for Java annotations (Conversely:
|
|
||||||
<b>--no-eradicate</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--eradicate-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--eradicate</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-eradicate-only</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-fragment-retains-view</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: detects when
|
|
||||||
Android fragments are not explicitly nullified before
|
|
||||||
becoming unreabable (Conversely:
|
|
||||||
<b>--fragment-retains-view</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--fragment-retains-view-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--fragment-retains-view</b> and disable all other
|
|
||||||
checkers (Conversely:
|
|
||||||
<b>--no-fragment-retains-view-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--immutable-cast</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: the detection of
|
|
||||||
object cast from immutable type to mutable type. For
|
|
||||||
instance, it will detect cast from ImmutableList to List,
|
|
||||||
ImmutableMap to Map, and ImmutableSet to Set. (Conversely:
|
|
||||||
<b>--no-immutable-cast</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--immutable-cast-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--immutable-cast</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-immutable-cast-only</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-inefficient-keyset-iterator</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Check for
|
|
||||||
inefficient uses of keySet iterator that access both the key
|
|
||||||
and the value. (Conversely:
|
|
||||||
<b>--inefficient-keyset-iterator</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--inefficient-keyset-iterator-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--inefficient-keyset-iterator</b> and disable all other
|
|
||||||
checkers (Conversely:
|
|
||||||
<b>--no-inefficient-keyset-iterator-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--jobs</b>,<b>-j</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Run the specified number of
|
|
||||||
analysis jobs simultaneously</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--keep-going</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Keep going when the
|
|
||||||
analysis encounters a failure (Conversely:
|
|
||||||
<b>--no-keep-going</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-linters</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: syntactic linters
|
|
||||||
(Conversely: <b>--linters</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--linters</b> and disable all other checkers (Conversely:
|
|
||||||
<b>--no-linters-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--litho</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Experimental
|
|
||||||
checkers supporting the Litho framework (Conversely:
|
|
||||||
<b>--no-litho</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--litho-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--litho</b> and disable all other checkers (Conversely:
|
|
||||||
<b>--no-litho-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-liveness</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: the detection of
|
|
||||||
dead stores and unused variables (Conversely:
|
|
||||||
<b>--liveness</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--liveness-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--liveness</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-liveness-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--loop-hoisting</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: checker for
|
|
||||||
loop-hoisting (Conversely: <b>--no-loop-hoisting</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--loop-hoisting-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--loop-hoisting</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-loop-hoisting-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--nullsafe</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: [EXPERIMENTAL]
|
|
||||||
Nullable type checker (incomplete: use --eradicate for now)
|
|
||||||
(Conversely: <b>--no-nullsafe</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--nullsafe-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--nullsafe</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-nullsafe-only</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--perf-profiler-data-file</b>
|
|
||||||
<i>file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the file containing
|
|
||||||
perf profiler data to read</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--print-active-checkers</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print the active
|
|
||||||
checkers before starting the analysis (Conversely:
|
|
||||||
<b>--no-print-active-checkers</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--print-logs</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Also log messages to
|
|
||||||
stdout and stderr (Conversely: <b>--no-print-logs</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--printf-args</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: the detection of
|
|
||||||
mismatch between the Java printf format strings and the
|
|
||||||
argument types For, example, this checker will warn about
|
|
||||||
the type error in ’printf("Hello %d",
|
|
||||||
"world")’ (Conversely:
|
|
||||||
<b>--no-printf-args</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--printf-args-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--printf-args</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-printf-args-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--progress-bar-style</b>
|
|
||||||
<i>{ auto | plain | multiline }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Style of the progress bar.
|
|
||||||
<b>auto</b> selects <b>multiline</b> if connected to a tty,
|
|
||||||
otherwise <b>plain</b>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--project-root</b>,<b>-C</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the root directory of
|
|
||||||
the project</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--pulse</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: [EXPERIMENTAL] C++
|
|
||||||
lifetime analysis (Conversely: <b>--no-pulse</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--pulse-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--pulse</b> and disable all other checkers (Conversely:
|
|
||||||
<b>--no-pulse-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--purity</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: [EXPERIMENTAL]
|
|
||||||
Purity analysis (Conversely: <b>--no-purity</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--purity-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--purity</b> and disable all other checkers (Conversely:
|
|
||||||
<b>--no-purity-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandary</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: the quandary taint
|
|
||||||
analysis (Conversely: <b>--no-quandary</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandary-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--quandary</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-quandary-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandaryBO</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: [EXPERIMENTAL] The
|
|
||||||
quandaryBO tainted buffer access analysis (Conversely:
|
|
||||||
<b>--no-quandaryBO</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandaryBO-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--quandaryBO</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-quandaryBO-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quiet</b>,<b>-q</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Do not print specs
|
|
||||||
on standard output (default: only print for the
|
|
||||||
<b>report</b> command) (Conversely: <b>--no-quiet</b> |
|
|
||||||
<b>-Q</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-racerd</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: the RacerD thread
|
|
||||||
safety analysis (Conversely: <b>--racerd</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--racerd-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--racerd</b> and disable all other checkers (Conversely:
|
|
||||||
<b>--no-racerd-only</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--reactive</b>,<b>-r</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Reactive mode: the
|
|
||||||
analysis starts from the files captured since the
|
|
||||||
<i>infer</i> command started (Conversely:
|
|
||||||
<b>--no-reactive</b> | <b>-R</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-report</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Run the reporting
|
|
||||||
phase once the analysis has completed (Conversely:
|
|
||||||
<b>--report</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-force-relative-path</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Force converting an
|
|
||||||
absolute path to a relative path to the root directory
|
|
||||||
(Conversely: <b>--no-report-force-relative-path</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-hook</b>
|
|
||||||
<i>script</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify a script to be executed
|
|
||||||
after the analysis results are written. This script will be
|
|
||||||
passed, <b>--issues-json</b>, <b>--issues-txt</b>,
|
|
||||||
<b>--issues-xml</b>, <b>--project-root</b>, and
|
|
||||||
<b>--results-dir</b>.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--results-dir</b>,<b>-o</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write results and internal
|
|
||||||
files in the specified directory</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-siof</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: the Static
|
|
||||||
Initialization Order Fiasco analysis (C++ only) (Conversely:
|
|
||||||
<b>--siof</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--siof-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable <b>--siof</b>
|
|
||||||
and disable all other checkers (Conversely:
|
|
||||||
<b>--no-siof-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--sqlite-lock-timeout</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Timeout for SQLite results
|
|
||||||
database operations, in milliseconds.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-starvation</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: starvation
|
|
||||||
analysis (Conversely: <b>--starvation</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--starvation-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--starvation</b> and disable all other checkers
|
|
||||||
(Conversely: <b>--no-starvation-only</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-uninit</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: checker for use of
|
|
||||||
uninitialized values (Conversely: <b>--uninit</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--uninit-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Enable
|
|
||||||
<b>--uninit</b> and disable all other checkers (Conversely:
|
|
||||||
<b>--no-uninit-only</b>)</p>
|
|
||||||
|
|
||||||
<h2>BIABDUCTION CHECKER OPTIONS
|
|
||||||
<a name="BIABDUCTION CHECKER OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--biabduction-fallback-model-alloc-pattern</b>
|
|
||||||
<i>string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Regex of methods that should be
|
|
||||||
modelled as allocs if definition is missing</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--biabduction-fallback-model-free-pattern</b>
|
|
||||||
<i>string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Regex of methods that should be
|
|
||||||
modelled as free if definition is missing</p>
|
|
||||||
|
|
||||||
<h2>BUCK FLAVORS OPTIONS
|
|
||||||
<a name="BUCK FLAVORS OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--merge</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Merge the captured
|
|
||||||
results directories specified in the dependency file
|
|
||||||
(Conversely: <b>--no-merge</b>)</p>
|
|
||||||
|
|
||||||
<h2>BUFFER OVERRUN OPTIONS
|
|
||||||
<a name="BUFFER OVERRUN OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--bo-debug</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for buffer-overrun
|
|
||||||
checker (0-4)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--bo-relational-domain</b>
|
|
||||||
<i>{ oct | poly }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Select a relational domain
|
|
||||||
being used in the bufferoverrun checker (experimental)</p>
|
|
||||||
|
|
||||||
<h2>CLANG OPTIONS
|
|
||||||
<a name="CLANG OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--annotation-reachability-cxx</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify annotation reachability
|
|
||||||
analyses to be performed on C/C++/ObjC code. Each entry is a
|
|
||||||
JSON object whose key is the issue name. "sources"
|
|
||||||
and "sinks" can be specified either by symbol or
|
|
||||||
path prefix. "sinks" optionally can specify
|
|
||||||
"overrides" (by symbol or path prefix) that block
|
|
||||||
the reachability analysis when hit. Example:</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">{ <br>
|
|
||||||
"ISOLATED_REACHING_CONNECT": { <br>
|
|
||||||
"doc_url":
|
|
||||||
"http:://optional/issue/doc/link.html", <br>
|
|
||||||
"sources": { <br>
|
|
||||||
"desc": "Code that should not call connect
|
|
||||||
[optional]", <br>
|
|
||||||
"paths": [ "isolated/" ] <br>
|
|
||||||
}, <br>
|
|
||||||
"sinks": { <br>
|
|
||||||
"symbols": [ "connect" ], <br>
|
|
||||||
"overrides": { "symbols": [
|
|
||||||
"Trusted::" ] } <br>
|
|
||||||
} <br>
|
|
||||||
} <br>
|
|
||||||
} <br>
|
|
||||||
This will cause us to create a new ISOLATED_REACHING_CONNECT
|
|
||||||
<br>
|
|
||||||
issue for every function whose source path starts with
|
|
||||||
"isolated/" <br>
|
|
||||||
that may reach the function named "connect",
|
|
||||||
ignoring paths that <br>
|
|
||||||
go through a symbol starting with "Trusted::".
|
|
||||||
<b><br>
|
|
||||||
--annotation-reachability-cxx-sources</b> <i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Override sources in all cxx
|
|
||||||
annotation reachability specs with the given sources
|
|
||||||
spec</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--cxx-scope-guards</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify scope guard classes
|
|
||||||
that can be read only by destructors without being reported
|
|
||||||
as dead stores.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--liveness-dangerous-classes</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify classes where the
|
|
||||||
destructor should be ignored when computing liveness. In
|
|
||||||
other words, assignement to variables of these types (or
|
|
||||||
common wrappers around these types such as
|
|
||||||
<i>unique_ptr<type></i>) will count as dead stores
|
|
||||||
when the variables are not read explicitly by the
|
|
||||||
program.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--ml-buckets</b>
|
|
||||||
<i>,-separated sequence of { all | cf | arc | narc | cpp |
|
|
||||||
<br>
|
|
||||||
unknown_origin }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the memory leak buckets
|
|
||||||
to be checked in C++:</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- <b>cpp</b> from C++ code
|
|
||||||
<b><br>
|
|
||||||
--unsafe-malloc</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Assume that
|
|
||||||
malloc(3) never returns null. (Conversely:
|
|
||||||
<b>--no-unsafe-malloc</b>)</p>
|
|
||||||
|
|
||||||
<h2>JAVA OPTIONS
|
|
||||||
<a name="JAVA OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--annotation-reachability-custom-pairs</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify custom sources/sink for
|
|
||||||
the annotation reachability checker</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">Example format: for custom
|
|
||||||
annotations <br>
|
|
||||||
com.my.annotation.{Source1,Source2,Sink1} <br>
|
|
||||||
{ "sources" : ["Source1",
|
|
||||||
"Source2"], "sink" : "Sink1" }
|
|
||||||
<b><br>
|
|
||||||
--external-java-packages</b> <i>+prefix</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify a list of Java package
|
|
||||||
prefixes for external Java packages. If set, the analysis
|
|
||||||
will not report non-actionable warnings on those
|
|
||||||
packages.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--java-version</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">The version of Java being used.
|
|
||||||
Set it to your Java version if mvn is failing.</p>
|
|
||||||
|
|
||||||
<h2>QUANDARY CHECKER OPTIONS
|
|
||||||
<a name="QUANDARY CHECKER OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--quandary-endpoints</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify endpoint classes for
|
|
||||||
Quandary</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandary-sanitizers</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify custom sanitizers for
|
|
||||||
Quandary</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandary-sinks</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify custom sinks for
|
|
||||||
Quandary</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quandary-sources</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify custom sources for
|
|
||||||
Quandary</p>
|
|
||||||
|
|
||||||
<h2>RACERD CHECKER OPTIONS
|
|
||||||
<a name="RACERD CHECKER OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--racerd-guardedby</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Check @GuardedBy
|
|
||||||
annotations with RacerD (Conversely:
|
|
||||||
<b>--no-racerd-guardedby</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--threadsafe-aliases</b>
|
|
||||||
<i>json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify custom annotations that
|
|
||||||
should be considered aliases of @ThreadSafe</p>
|
|
||||||
|
|
||||||
<h2>SIOF CHECKER OPTIONS
|
|
||||||
<a name="SIOF CHECKER OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--siof-check-iostreams</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Do not assume that
|
|
||||||
iostreams (cout, cerr, ...) are always initialized. The
|
|
||||||
default is to assume they are always initialized to avoid
|
|
||||||
false positives. However, if your program compiles against a
|
|
||||||
recent libstdc++ then it is safe to turn this option on.
|
|
||||||
(Conversely: <b>--no-siof-check-iostreams</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--siof-safe-methods</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Methods that are SIOF-safe;
|
|
||||||
"foo::bar" will match "foo::bar()",
|
|
||||||
"foo<int>::bar()", etc. (can be specified
|
|
||||||
multiple times)</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-report</b>(1),
|
|
||||||
<b>infer-run</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,575 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:48 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-capture</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-capture</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#BUCK COMPILATION DATABASE OPTIONS">BUCK COMPILATION DATABASE OPTIONS</a><br>
|
|
||||||
<a href="#BUCK FLAVORS OPTIONS">BUCK FLAVORS OPTIONS</a><br>
|
|
||||||
<a href="#BUCK FOR JAVA OPTIONS">BUCK FOR JAVA OPTIONS</a><br>
|
|
||||||
<a href="#CLANG LINTERS OPTIONS">CLANG LINTERS OPTIONS</a><br>
|
|
||||||
<a href="#CLANG OPTIONS">CLANG OPTIONS</a><br>
|
|
||||||
<a href="#JAVA OPTIONS">JAVA OPTIONS</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-capture -
|
|
||||||
capture source files for later analysis</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
capture</b> <i>[options]</i> <b>-- buck</b> <i>...</i>
|
|
||||||
<b><br>
|
|
||||||
infer capture --flavors</b> <i>[options]</i> <b>-- buck</b>
|
|
||||||
<i>...</i> <b><br>
|
|
||||||
infer capture --buck-compilation-database</b> <i>[no-]deps
|
|
||||||
[options]</i> <b>-- buck</b> <i>...</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i>
|
|
||||||
<b>--compilation-database</b> <i>file</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i>
|
|
||||||
<b>--compilation-database-escaped</b> <i>file</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i> <b>--
|
|
||||||
gradle</b>/<b>gradlew</b> <i>...</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i> <b>-- javac</b>
|
|
||||||
<i>...</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i> <b>--
|
|
||||||
make</b>/<b>clang</b>/<b>gcc</b> <i>...</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i> <b>-- mvn</b>/<b>mvnw</b>
|
|
||||||
<i>...</i> <b><br>
|
|
||||||
infer capture</b> <i>[options]</i> <b>-- ndk-build</b>
|
|
||||||
<i>...</i> <b><br>
|
|
||||||
infer capture</b> <i>[--no-xcpretty] [options]</i> <b>--
|
|
||||||
xcodebuild</b> <i>...</i></p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Capture the
|
|
||||||
build command or compilation database specified on the
|
|
||||||
command line: infer intercepts calls to the compiler to read
|
|
||||||
source files, translate them into infer's intermediate
|
|
||||||
representation, and store the result of the translation in
|
|
||||||
the results directory.</p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--debug</b>,<b>-g</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode (also
|
|
||||||
sets <b>--debug-level 2</b>, <b>--developer-mode</b>,
|
|
||||||
<b>--no-filtering</b>, <b>--print-buckets</b>,
|
|
||||||
<b>--print-types</b>, <b>--reports-include-ml-loc</b>,
|
|
||||||
<b>--no-only-cheap-debug</b>, <b>--trace-error</b>,
|
|
||||||
<b>--write-dotty</b>, <b>--write-html</b>) (Conversely:
|
|
||||||
<b>--no-debug</b> | <b>-G</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level</b>
|
|
||||||
<i>level</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level (sets
|
|
||||||
<b>--bo-debug</b> <i>level</i>,
|
|
||||||
<b>--debug-level-analysis</b> <i>level</i>,
|
|
||||||
<b>--debug-level-capture</b> <i>level</i>,
|
|
||||||
<b>--debug-level-linters</b> <i>level</i>):</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- 0: only basic debugging
|
|
||||||
enabled <br>
|
|
||||||
- 1: verbose debugging enabled <br>
|
|
||||||
- 2: very verbose debugging enabled <b><br>
|
|
||||||
--debug-level-analysis</b> <i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the analysis.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-capture</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the capture.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--force-delete-results-dir</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Do not refuse to
|
|
||||||
delete the results directory if it doesn't look like an
|
|
||||||
infer results directory. (Conversely:
|
|
||||||
<b>--no-force-delete-results-dir</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--force-integration</b>
|
|
||||||
<i>command</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Proceed as if the first
|
|
||||||
argument after <b>--</b> was <i>command</i>. Possible
|
|
||||||
values: <i>ant</i>, <i>buck</i>, <i>gradle</i>,
|
|
||||||
<i>gradlew</i>, <i>java</i>, <i>javac</i>, <i>cc</i>,
|
|
||||||
<i>clang</i>, <i>gcc</i>, <i>clang++</i>, <i>c++</i>,
|
|
||||||
<i>g++</i>, <i>make</i>, <i>configure</i>, <i>cmake</i>,
|
|
||||||
<i>waf</i>, <i>mvn</i>, <i>mvnw</i>, <i>ndk-build</i>,
|
|
||||||
<i>xcodebuild</i>.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--load-average</b>,<b>-l</b>
|
|
||||||
<i>float</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Do not start new parallel jobs
|
|
||||||
if the load average is greater than that specified (Buck and
|
|
||||||
make only)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--print-logs</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Also log messages to
|
|
||||||
stdout and stderr (Conversely: <b>--no-print-logs</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--progress-bar-style</b>
|
|
||||||
<i>{ auto | plain | multiline }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Style of the progress bar.
|
|
||||||
<b>auto</b> selects <b>multiline</b> if connected to a tty,
|
|
||||||
otherwise <b>plain</b>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--project-root</b>,<b>-C</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the root directory of
|
|
||||||
the project</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--results-dir</b>,<b>-o</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write results and internal
|
|
||||||
files in the specified directory</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--skip-analysis-in-path</b>
|
|
||||||
<i>+path_prefix_OCaml_regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Ignore files whose path matches
|
|
||||||
the given prefix (can be specified multiple times)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--sqlite-lock-timeout</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Timeout for SQLite results
|
|
||||||
database operations, in milliseconds.</p>
|
|
||||||
|
|
||||||
<table width="100%" border="0" rules="none" frame="void"
|
|
||||||
cellspacing="0" cellpadding="0">
|
|
||||||
<tr valign="top" align="left">
|
|
||||||
<td width="11%"></td>
|
|
||||||
<td width="3%">
|
|
||||||
|
|
||||||
|
|
||||||
<p><b>--</b></p></td>
|
|
||||||
<td width="3%"></td>
|
|
||||||
<td width="83%">
|
|
||||||
|
|
||||||
|
|
||||||
<p>Stop argument processing, use remaining arguments as a
|
|
||||||
build command</p></td></tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<h2>BUCK COMPILATION DATABASE OPTIONS
|
|
||||||
<a name="BUCK COMPILATION DATABASE OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--buck-compilation-database</b>
|
|
||||||
<i>{ no-deps | deps }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Buck integration using the
|
|
||||||
compilation database, with or without dependencies.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--buck-compilation-database-depth</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Depth of dependencies used by
|
|
||||||
the <b>--buck-compilation-database deps</b> option. By
|
|
||||||
default, all recursive dependencies are captured.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--buck-targets-blacklist</b>
|
|
||||||
<i>+regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Skip capture of buck targets
|
|
||||||
matched by the specified regular expression.</p>
|
|
||||||
|
|
||||||
<h2>BUCK FLAVORS OPTIONS
|
|
||||||
<a name="BUCK FLAVORS OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--append-buck-flavors</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Additional Buck flavors to
|
|
||||||
append to targets discovered by the
|
|
||||||
<b>--buck-compilation-database</b> option.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--buck-blacklist</b>
|
|
||||||
<i>+regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Skip capture of files matched
|
|
||||||
by the specified regular expression (only the "flavors
|
|
||||||
(C++)" Buck integration is supported, not Java).</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--capture-blacklist</b>
|
|
||||||
<i>regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Skip capture of files matched
|
|
||||||
by the specified OCaml regular expression (only supported by
|
|
||||||
the javac integration for now).</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--flavors</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Buck integration
|
|
||||||
using Buck flavors (clang only), eg <i>’infer
|
|
||||||
--flavors -- buck build //foo:bar#infer’</i>
|
|
||||||
(Conversely: <b>--no-flavors</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--Xbuck</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Pass values as command-line
|
|
||||||
arguments to invocations of <i>’buck
|
|
||||||
build’</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--Xbuck-no-inline</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Pass values as command-line
|
|
||||||
arguments to invocations of <i>’buck build’</i>,
|
|
||||||
don't inline any args starting with '@'</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--xcode-developer-dir</b>
|
|
||||||
<i>XCODE_DEVELOPER_DIR</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the path to Xcode
|
|
||||||
developer directory</p>
|
|
||||||
|
|
||||||
<h2>BUCK FOR JAVA OPTIONS
|
|
||||||
<a name="BUCK FOR JAVA OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--buck-out</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the root directory of
|
|
||||||
buck-out</p>
|
|
||||||
|
|
||||||
<h2>CLANG LINTERS OPTIONS
|
|
||||||
<a name="CLANG LINTERS OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-default-linters</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Use the default
|
|
||||||
linters for the analysis. (Conversely:
|
|
||||||
<b>--default-linters</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--iphoneos-target-sdk-version</b>
|
|
||||||
<i>string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the target SDK version
|
|
||||||
to use for iphoneos</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--iphoneos-target-sdk-version-path-regex</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">To pass a specific target SDK
|
|
||||||
version to use for iphoneos in a particular path, with the
|
|
||||||
format path:version (can be specified multiple times)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linter</b>
|
|
||||||
<i>string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">From the linters available,
|
|
||||||
only run this one linter. (Useful together with
|
|
||||||
<b>--linters-developer-mode</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-def-file</b>
|
|
||||||
<i>+file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the file containing
|
|
||||||
linters definition (e.g. 'linters.al')</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-def-folder</b>
|
|
||||||
<i>+dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the folder containing
|
|
||||||
linters files with extension .al</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-developer-mode</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode for
|
|
||||||
developing new linters. (Sets the analyzer to
|
|
||||||
<b>linters</b>; also sets <b>--debug</b>,
|
|
||||||
<b>--debug-level-linters 2</b>, <b>--developer-mode</b>, and
|
|
||||||
unsets <b>--allowed-failures</b> and
|
|
||||||
<b>--default-linters</b>. (Conversely:
|
|
||||||
<b>--no-linters-developer-mode</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-doc-url</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify custom documentation
|
|
||||||
URL for some linter that overrides the default one. Useful
|
|
||||||
if your project has specific ways of fixing a lint error
|
|
||||||
that is not true in general or public info. Format:
|
|
||||||
linter_name:doc_url.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-ignore-clang-failures</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Continue linting
|
|
||||||
files even if some compilation fails. (Conversely:
|
|
||||||
<b>--no-linters-ignore-clang-failures</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--linters-validate-syntax-only</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Validate syntax of
|
|
||||||
AL files, then emit possible errors in JSON format to stdout
|
|
||||||
(Conversely: <b>--no-linters-validate-syntax-only</b>)</p>
|
|
||||||
|
|
||||||
<h2>CLANG OPTIONS
|
|
||||||
<a name="CLANG OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--clang-biniou-file</b>
|
|
||||||
<i>file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify a file containing the
|
|
||||||
AST of the program, in biniou format</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--clang-blacklisted-flags</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Clang flags to filter out</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--clang-blacklisted-flags-with-arg</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Clang flags (taking args) to
|
|
||||||
filter out</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--compilation-database</b>
|
|
||||||
<i>+path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">File that contain compilation
|
|
||||||
commands (can be specified multiple times)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--compilation-database-escaped</b>
|
|
||||||
<i>+path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">File that contain compilation
|
|
||||||
commands where all entries are escaped for the shell, eg
|
|
||||||
coming from Xcode (can be specified multiple times)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--compute-analytics</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Emit analytics as
|
|
||||||
info-level issues, like component kit line count and
|
|
||||||
component kit file cyclomatic complexity (Conversely:
|
|
||||||
<b>--no-compute-analytics</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-cxx</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Analyze C++
|
|
||||||
methods (Conversely: <b>--cxx</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--dump-duplicate-symbols</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Dump all symbols
|
|
||||||
with the same name that are defined in more than one file.
|
|
||||||
(Conversely: <b>--no-dump-duplicate-symbols</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--frontend-tests</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Save
|
|
||||||
filename.ext.test.dot with the cfg in dotty format for
|
|
||||||
frontend tests (also sets <b>--print-types</b>) (Conversely:
|
|
||||||
<b>--no-frontend-tests</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--headers</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Analyze code in
|
|
||||||
header files (Conversely: <b>--no-headers</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--skip-translation-headers</b>
|
|
||||||
<i>+path_prefix</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Ignore headers whose path
|
|
||||||
matches the given prefix</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--Xclang</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Pass values as command-line
|
|
||||||
arguments to invocations of clang</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--xcpretty</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Infer will use
|
|
||||||
xcpretty together with xcodebuild to analyze an iOS app.
|
|
||||||
xcpretty just needs to be in the path, infer command is
|
|
||||||
still just <i>’infer -- <xcodebuild
|
|
||||||
command>’</i>. (Conversely:
|
|
||||||
<b>--no-xcpretty</b>)</p>
|
|
||||||
|
|
||||||
<h2>JAVA OPTIONS
|
|
||||||
<a name="JAVA OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--bootclasspath</b>
|
|
||||||
<i>string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the Java
|
|
||||||
bootclasspath</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--dependencies</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Translate all the
|
|
||||||
dependencies during the capture. The classes in the given
|
|
||||||
jar file will be translated. No sources needed. (Conversely:
|
|
||||||
<b>--no-dependencies</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--generated-classes</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify where to load the
|
|
||||||
generated class files</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--java-jar-compiler</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the Java compiler jar
|
|
||||||
used to generate the bytecode</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--java-version</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">The version of Java being used.
|
|
||||||
Set it to your Java version if mvn is failing.</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-analyze</b>(1),
|
|
||||||
<b>infer-compile</b>(1), <b>infer-run</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,202 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:48 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-compile</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-compile</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#EXAMPLES">EXAMPLES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-compile -
|
|
||||||
compile project from within the infer environment</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
compile --</b> <i>[compile command]</i></p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Intercepts
|
|
||||||
compilation commands similarly to <b>infer-capture</b>, but
|
|
||||||
simply execute these compilation commands and do not perform
|
|
||||||
any translation of the source files. This can be useful to
|
|
||||||
configure build systems or for debugging purposes.</p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--debug</b>,<b>-g</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode (also
|
|
||||||
sets <b>--debug-level 2</b>, <b>--developer-mode</b>,
|
|
||||||
<b>--no-filtering</b>, <b>--print-buckets</b>,
|
|
||||||
<b>--print-types</b>, <b>--reports-include-ml-loc</b>,
|
|
||||||
<b>--no-only-cheap-debug</b>, <b>--trace-error</b>,
|
|
||||||
<b>--write-dotty</b>, <b>--write-html</b>) (Conversely:
|
|
||||||
<b>--no-debug</b> | <b>-G</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level</b>
|
|
||||||
<i>level</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level (sets
|
|
||||||
<b>--bo-debug</b> <i>level</i>,
|
|
||||||
<b>--debug-level-analysis</b> <i>level</i>,
|
|
||||||
<b>--debug-level-capture</b> <i>level</i>,
|
|
||||||
<b>--debug-level-linters</b> <i>level</i>):</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- 0: only basic debugging
|
|
||||||
enabled <br>
|
|
||||||
- 1: verbose debugging enabled <br>
|
|
||||||
- 2: very verbose debugging enabled <b><br>
|
|
||||||
--debug-level-analysis</b> <i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the analysis.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-capture</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the capture.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--force-delete-results-dir</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Do not refuse to
|
|
||||||
delete the results directory if it doesn't look like an
|
|
||||||
infer results directory. (Conversely:
|
|
||||||
<b>--no-force-delete-results-dir</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>EXAMPLES
|
|
||||||
<a name="EXAMPLES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>cmake</b>(1)
|
|
||||||
hardcodes the absolute paths to the compiler inside the
|
|
||||||
Makefiles it generates, which defeats the later capture of
|
|
||||||
compilation commands by infer. Thus, to capture a CMake
|
|
||||||
project, one should configure the project from within the
|
|
||||||
infer build environment, for instance:</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">mkdir build
|
|
||||||
&& cd build <br>
|
|
||||||
infer compile -- cmake .. <br>
|
|
||||||
infer capture -- make</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">The same
|
|
||||||
solution can be used for projects whose
|
|
||||||
"./configure" script hardcodes the paths to the
|
|
||||||
compilers, for instance:</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer compile
|
|
||||||
-- ./configure <br>
|
|
||||||
infer capture -- make</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Another
|
|
||||||
solution for CMake projects is to use CMake's compilation
|
|
||||||
databases, for instance:</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">mkdir build
|
|
||||||
&& cd build <br>
|
|
||||||
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=1 .. <br>
|
|
||||||
infer capture --compilation-database
|
|
||||||
compile_commands.json</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-capture</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,275 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:49 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-explore</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-explore</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#EXPLORE BUGS">EXPLORE BUGS</a><br>
|
|
||||||
<a href="#EXPLORE PROCEDURES">EXPLORE PROCEDURES</a><br>
|
|
||||||
<a href="#EXPLORE SOURCE FILES">EXPLORE SOURCE FILES</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-explore -
|
|
||||||
explore the error traces in infer reports</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
explore</b> <i>[options]</i> <b><br>
|
|
||||||
infer explore --procedures</b> <i>[options]</i> <b><br>
|
|
||||||
infer explore --source-files</b> <i>[options]</i></p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">If
|
|
||||||
<b>--procedures</b> is passed, print information about each
|
|
||||||
procedure captured by infer.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">If
|
|
||||||
<b>--source-files</b> is passed, print information about
|
|
||||||
captured source files.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Otherwise, show
|
|
||||||
the list of bugs on the console and explore symbolic program
|
|
||||||
traces emitted by infer to explain a report. Can also
|
|
||||||
generate an HTML report from a JSON report.</p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--results-dir</b>,<b>-o</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write results and internal
|
|
||||||
files in the specified directory</p>
|
|
||||||
|
|
||||||
<h2>EXPLORE BUGS
|
|
||||||
<a name="EXPLORE BUGS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--html</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Generate html
|
|
||||||
report. (Conversely: <b>--no-html</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--max-nesting</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Level of nested procedure calls
|
|
||||||
to show. Trace elements beyond the maximum nesting level are
|
|
||||||
skipped. If omitted, all levels are shown.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--only-show</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Show the list of
|
|
||||||
reports and exit (Conversely: <b>--no-only-show</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--select</b> <i>N</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Select bug number <i>N</i>. If
|
|
||||||
omitted, prompt for input.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-source-preview</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: print code
|
|
||||||
excerpts around trace elements (Conversely:
|
|
||||||
<b>--source-preview</b>)</p>
|
|
||||||
|
|
||||||
<h2>EXPLORE PROCEDURES
|
|
||||||
<a name="EXPLORE PROCEDURES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--procedures</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print functions and
|
|
||||||
methods discovered by infer (Conversely:
|
|
||||||
<b>--no-procedures</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--procedures-attributes</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print the attributes
|
|
||||||
of each procedure in the output of <b>--procedures</b>
|
|
||||||
(Conversely: <b>--no-procedures-attributes</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-procedures-definedness</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Include procedures
|
|
||||||
definedness in the output of <b>--procedures</b>, i.e.
|
|
||||||
whether the procedure definition was found, or only the
|
|
||||||
procedure declaration, or the procedure is an auto-generated
|
|
||||||
Objective-C accessor (Conversely:
|
|
||||||
<b>--procedures-definedness</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--procedures-filter</b>
|
|
||||||
<i>filter</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">With <b>--procedures</b>, only
|
|
||||||
print functions and methods (procedures) matching the
|
|
||||||
specified <i>filter</i>. A procedure filter is of the form
|
|
||||||
<i>path_pattern:procedure_name</i>. Patterns are interpreted
|
|
||||||
as OCaml Str regular expressions. For instance, to keep only
|
|
||||||
methods named "foo", one can use the filter
|
|
||||||
".*:foo", or "foo" for short.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--procedures-name</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Include procedures
|
|
||||||
names in the output of <b>--procedures</b> (Conversely:
|
|
||||||
<b>--no-procedures-name</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-procedures-source-file</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Include the source
|
|
||||||
file in which the procedure definition or declaration was
|
|
||||||
found in the output of <b>--procedures</b> (Conversely:
|
|
||||||
<b>--procedures-source-file</b>)</p>
|
|
||||||
|
|
||||||
<h2>EXPLORE SOURCE FILES
|
|
||||||
<a name="EXPLORE SOURCE FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--source-files</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print source files
|
|
||||||
discovered by infer (Conversely:
|
|
||||||
<b>--no-source-files</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--source-files-cfg</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Output a dotty file
|
|
||||||
in infer-out/captured for each source file in the output of
|
|
||||||
<b>--source-files</b> (Conversely:
|
|
||||||
<b>--no-source-files-cfg</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--source-files-filter</b>
|
|
||||||
<i>filter</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">With <b>--source-files</b>,
|
|
||||||
only print source files matching the specified
|
|
||||||
<i>filter</i>. The filter is a pattern that should match the
|
|
||||||
file path. Patterns are interpreted as OCaml Str regular
|
|
||||||
expressions.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--source-files-freshly-captured</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print whether the
|
|
||||||
source file has been captured in the most recent capture
|
|
||||||
phase in the output of <b>--source-files</b>. (Conversely:
|
|
||||||
<b>--no-source-files-freshly-captured</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--source-files-procedure-names</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print the names of
|
|
||||||
procedure of each source file in the output of
|
|
||||||
<b>--source-files</b> (Conversely:
|
|
||||||
<b>--no-source-files-procedure-names</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--source-files-type-environment</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print the type
|
|
||||||
environment of each source file in the output of
|
|
||||||
<b>--source-files</b> (Conversely:
|
|
||||||
<b>--no-source-files-type-environment</b>)</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-report</b>(1),
|
|
||||||
<b>infer-run</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,513 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:49 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-report</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-report</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#HOISTING OPTIONS">HOISTING OPTIONS</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-report -
|
|
||||||
compute and manipulate infer results</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
report</b> <i>[options]</i> [<i>file.specs</i>...]</p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Read, convert,
|
|
||||||
and print .specs files in the results directory. Each spec
|
|
||||||
is printed to standard output unless option -q is used.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">If no specs
|
|
||||||
file are passed on the command line, process all the .specs
|
|
||||||
in the results directory.</p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--censor-report</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify a filter for issues to
|
|
||||||
be censored by adding a 'censored_reason' field in the json
|
|
||||||
report. Infer will not report censored issues on the console
|
|
||||||
output and in bugs.txt, but tools that post-process the json
|
|
||||||
report can take them into account. If multiple filters are
|
|
||||||
specified, they are applied in the order in which they are
|
|
||||||
specified. Each filter is applied to each issue detected,
|
|
||||||
and only issues which are accepted by all filters are
|
|
||||||
reported. Each filter is of the form:
|
|
||||||
’<issue_type_regex>:<filename_regex>:<reason_string>’.
|
|
||||||
The first two components are OCaml Str regular expressions,
|
|
||||||
with an optional ’!’ character prefix. If a
|
|
||||||
regex has a ’!’ prefix, the polarity is
|
|
||||||
inverted, and the filter becomes a "blacklist"
|
|
||||||
instead of a "whitelist". Each filter is
|
|
||||||
interpreted as an implication: an issue matches if it does
|
|
||||||
not match the ’issue_type_regex’ or if it does
|
|
||||||
match the ’filename_regex’. The filenames that
|
|
||||||
are tested by the regex are relative to the
|
|
||||||
’--project-root’ directory. The
|
|
||||||
’<reason_string>’ is a non-empty string
|
|
||||||
used to explain why the issue was filtered.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug</b>,<b>-g</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode (also
|
|
||||||
sets <b>--debug-level 2</b>, <b>--developer-mode</b>,
|
|
||||||
<b>--no-filtering</b>, <b>--print-buckets</b>,
|
|
||||||
<b>--print-types</b>, <b>--reports-include-ml-loc</b>,
|
|
||||||
<b>--no-only-cheap-debug</b>, <b>--trace-error</b>,
|
|
||||||
<b>--write-dotty</b>, <b>--write-html</b>) (Conversely:
|
|
||||||
<b>--no-debug</b> | <b>-G</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level</b>
|
|
||||||
<i>level</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level (sets
|
|
||||||
<b>--bo-debug</b> <i>level</i>,
|
|
||||||
<b>--debug-level-analysis</b> <i>level</i>,
|
|
||||||
<b>--debug-level-capture</b> <i>level</i>,
|
|
||||||
<b>--debug-level-linters</b> <i>level</i>):</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- 0: only basic debugging
|
|
||||||
enabled <br>
|
|
||||||
- 1: verbose debugging enabled <br>
|
|
||||||
- 2: very verbose debugging enabled <b><br>
|
|
||||||
--debug-level-analysis</b> <i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the analysis.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-capture</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the capture.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--differential-filter-files</b>
|
|
||||||
<i>string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the file containing the
|
|
||||||
list of source files for which a differential report is
|
|
||||||
desired. Source files should be specified relative to
|
|
||||||
project root or be absolute</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--disable-issue-type</b>
|
|
||||||
<i>+issue_type</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Do not show reports coming from
|
|
||||||
this type of issue. Each checker can report a range of issue
|
|
||||||
types. This option provides fine-grained filtering over
|
|
||||||
which types of issue should be reported once the checkers
|
|
||||||
have run. In particular, note that disabling issue types
|
|
||||||
does not make the corresponding checker not run.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">Available issue types are as
|
|
||||||
follows: <br>
|
|
||||||
ALLOCATION_COMPLEXITY_INCREASE (enabled by default), <br>
|
|
||||||
ALLOCATION_COMPLEXITY_INCREASE_COLD_START (enabled by
|
|
||||||
default), <br>
|
|
||||||
ANALYSIS_STOPS (disabled by default), <br>
|
|
||||||
ARRAY_OUT_OF_BOUNDS_L1 (disabled by default), <br>
|
|
||||||
ARRAY_OUT_OF_BOUNDS_L2 (disabled by default), <br>
|
|
||||||
ARRAY_OUT_OF_BOUNDS_L3 (disabled by default), <br>
|
|
||||||
Abduction_case_not_implemented (enabled by default), <br>
|
|
||||||
Array_of_pointsto (enabled by default), <br>
|
|
||||||
Assert_failure (enabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_L1 (enabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_L2 (enabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_L3 (enabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_L4 (disabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_L5 (disabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_R2 (enabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_S2 (enabled by default), <br>
|
|
||||||
BUFFER_OVERRUN_U5 (disabled by default), <br>
|
|
||||||
Bad_footprint (enabled by default), <br>
|
|
||||||
CHECKERS_ALLOCATES_MEMORY (enabled by default), <br>
|
|
||||||
CHECKERS_ANNOTATION_REACHABILITY_ERROR (enabled by default),
|
|
||||||
<br>
|
|
||||||
CHECKERS_CALLS_EXPENSIVE_METHOD (enabled by default), <br>
|
|
||||||
CHECKERS_EXPENSIVE_OVERRIDES_UNANNOTATED (enabled by
|
|
||||||
default), <br>
|
|
||||||
CHECKERS_FRAGMENT_RETAINS_VIEW (enabled by default), <br>
|
|
||||||
CHECKERS_IMMUTABLE_CAST (enabled by default), <br>
|
|
||||||
CHECKERS_PRINTF_ARGS (enabled by default), <br>
|
|
||||||
CLASS_CAST_EXCEPTION (disabled by default), <br>
|
|
||||||
CLASS_LOAD (enabled by default), <br>
|
|
||||||
COMPARING_FLOAT_FOR_EQUALITY (enabled by default), <br>
|
|
||||||
COMPONENT_FACTORY_FUNCTION (enabled by default), <br>
|
|
||||||
COMPONENT_FILE_CYCLOMATIC_COMPLEXITY (enabled by default),
|
|
||||||
<br>
|
|
||||||
COMPONENT_FILE_LINE_COUNT (enabled by default), <br>
|
|
||||||
COMPONENT_INITIALIZER_WITH_SIDE_EFFECTS (enabled by
|
|
||||||
default), <br>
|
|
||||||
COMPONENT_WITH_MULTIPLE_FACTORY_METHODS (enabled by
|
|
||||||
default), <br>
|
|
||||||
COMPONENT_WITH_UNCONVENTIONAL_SUPERCLASS (enabled by
|
|
||||||
default), <br>
|
|
||||||
CONDITION_ALWAYS_FALSE (disabled by default), <br>
|
|
||||||
CONDITION_ALWAYS_TRUE (disabled by default), <br>
|
|
||||||
CREATE_INTENT_FROM_URI (enabled by default), <br>
|
|
||||||
CROSS_SITE_SCRIPTING (enabled by default), <br>
|
|
||||||
Cannot_star (enabled by default), <br>
|
|
||||||
Codequery (enabled by default), <br>
|
|
||||||
DANGLING_POINTER_DEREFERENCE (disabled by default), <br>
|
|
||||||
DEADLOCK (enabled by default), <br>
|
|
||||||
DEAD_STORE (enabled by default), <br>
|
|
||||||
DEALLOCATE_STACK_VARIABLE (enabled by default), <br>
|
|
||||||
DEALLOCATE_STATIC_MEMORY (enabled by default), <br>
|
|
||||||
DEALLOCATION_MISMATCH (enabled by default), <br>
|
|
||||||
DIVIDE_BY_ZERO (disabled by default), <br>
|
|
||||||
DO_NOT_REPORT (enabled by default), <br>
|
|
||||||
EMPTY_VECTOR_ACCESS (enabled by default), <br>
|
|
||||||
ERADICATE_CONDITION_REDUNDANT (enabled by default), <br>
|
|
||||||
ERADICATE_CONDITION_REDUNDANT_NONNULL (enabled by default),
|
|
||||||
<br>
|
|
||||||
ERADICATE_FIELD_NOT_INITIALIZED (enabled by default), <br>
|
|
||||||
ERADICATE_FIELD_NOT_MUTABLE (enabled by default), <br>
|
|
||||||
ERADICATE_FIELD_NOT_NULLABLE (enabled by default), <br>
|
|
||||||
ERADICATE_FIELD_OVER_ANNOTATED (enabled by default), <br>
|
|
||||||
ERADICATE_FIELD_VALUE_ABSENT (enabled by default), <br>
|
|
||||||
ERADICATE_INCONSISTENT_SUBCLASS_PARAMETER_ANNOTATION
|
|
||||||
(enabled <br>
|
|
||||||
by default), <br>
|
|
||||||
ERADICATE_INCONSISTENT_SUBCLASS_RETURN_ANNOTATION (enabled
|
|
||||||
by <br>
|
|
||||||
default), <br>
|
|
||||||
ERADICATE_NULLABLE_DEREFERENCE (enabled by default), <br>
|
|
||||||
ERADICATE_PARAMETER_NOT_NULLABLE (enabled by default), <br>
|
|
||||||
ERADICATE_PARAMETER_VALUE_ABSENT (enabled by default), <br>
|
|
||||||
ERADICATE_RETURN_NOT_NULLABLE (enabled by default), <br>
|
|
||||||
ERADICATE_RETURN_OVER_ANNOTATED (enabled by default), <br>
|
|
||||||
ERADICATE_RETURN_VALUE_NOT_PRESENT (enabled by default),
|
|
||||||
<br>
|
|
||||||
ERADICATE_VALUE_NOT_PRESENT (enabled by default), <br>
|
|
||||||
EXECUTION_TIME_COMPLEXITY_INCREASE (enabled by default),
|
|
||||||
<br>
|
|
||||||
EXECUTION_TIME_COMPLEXITY_INCREASE_COLD_START (enabled by
|
|
||||||
<br>
|
|
||||||
default), <br>
|
|
||||||
EXPENSIVE_ALLOCATION (disabled by default), <br>
|
|
||||||
EXPENSIVE_ALLOCATION_COLD_START (disabled by default), <br>
|
|
||||||
EXPENSIVE_EXECUTION_TIME (disabled by default), <br>
|
|
||||||
EXPENSIVE_EXECUTION_TIME_COLD_START (disabled by default),
|
|
||||||
<br>
|
|
||||||
EXPENSIVE_LOOP_INVARIANT_CALL (enabled by default), <br>
|
|
||||||
EXPOSED_INSECURE_INTENT_HANDLING (enabled by default), <br>
|
|
||||||
Failure_exe (enabled by default), <br>
|
|
||||||
GLOBAL_VARIABLE_INITIALIZED_WITH_FUNCTION_OR_METHOD_CALL
|
|
||||||
<br>
|
|
||||||
(disabled by default), <br>
|
|
||||||
GRAPHQL_FIELD_ACCESS (enabled by default), <br>
|
|
||||||
GUARDEDBY_VIOLATION (enabled by default), <br>
|
|
||||||
INEFFICIENT_KEYSET_ITERATOR (enabled by default), <br>
|
|
||||||
INFERBO_ALLOC_IS_BIG (enabled by default), <br>
|
|
||||||
INFERBO_ALLOC_IS_NEGATIVE (enabled by default), <br>
|
|
||||||
INFERBO_ALLOC_IS_ZERO (enabled by default), <br>
|
|
||||||
INFERBO_ALLOC_MAY_BE_BIG (enabled by default), <br>
|
|
||||||
INFERBO_ALLOC_MAY_BE_NEGATIVE (enabled by default), <br>
|
|
||||||
INFINITE_ALLOCATION (disabled by default), <br>
|
|
||||||
INFINITE_EXECUTION_TIME (disabled by default), <br>
|
|
||||||
INHERENTLY_DANGEROUS_FUNCTION (enabled by default), <br>
|
|
||||||
INSECURE_INTENT_HANDLING (enabled by default), <br>
|
|
||||||
INTEGER_OVERFLOW_L1 (enabled by default), <br>
|
|
||||||
INTEGER_OVERFLOW_L2 (enabled by default), <br>
|
|
||||||
INTEGER_OVERFLOW_L5 (disabled by default), <br>
|
|
||||||
INTEGER_OVERFLOW_R2 (enabled by default), <br>
|
|
||||||
INTEGER_OVERFLOW_U5 (disabled by default), <br>
|
|
||||||
INTERFACE_NOT_THREAD_SAFE (enabled by default), <br>
|
|
||||||
INVARIANT_CALL (enabled by default), <br>
|
|
||||||
IVAR_NOT_NULL_CHECKED (enabled by default), <br>
|
|
||||||
Internal_error (enabled by default), <br>
|
|
||||||
JAVASCRIPT_INJECTION (enabled by default), <br>
|
|
||||||
LOCK_CONSISTENCY_VIOLATION (enabled by default), <br>
|
|
||||||
LOGGING_PRIVATE_DATA (enabled by default), <br>
|
|
||||||
Leak_after_array_abstraction (enabled by default), <br>
|
|
||||||
Leak_in_footprint (enabled by default), <br>
|
|
||||||
MEMORY_LEAK (enabled by default), <br>
|
|
||||||
MISSING_REQUIRED_PROP (enabled by default), <br>
|
|
||||||
MUTABLE_LOCAL_VARIABLE_IN_COMPONENT_FILE (enabled by
|
|
||||||
default), <br>
|
|
||||||
Missing_fld (enabled by default), <br>
|
|
||||||
NULLSAFE_FIELD_NOT_NULLABLE (enabled by default), <br>
|
|
||||||
NULLSAFE_NULLABLE_DEREFERENCE (enabled by default), <br>
|
|
||||||
NULL_DEREFERENCE (enabled by default), <br>
|
|
||||||
NULL_TEST_AFTER_DEREFERENCE (disabled by default), <br>
|
|
||||||
PARAMETER_NOT_NULL_CHECKED (enabled by default), <br>
|
|
||||||
POINTER_SIZE_MISMATCH (enabled by default), <br>
|
|
||||||
PRECONDITION_NOT_FOUND (enabled by default), <br>
|
|
||||||
PRECONDITION_NOT_MET (enabled by default), <br>
|
|
||||||
PREMATURE_NIL_TERMINATION_ARGUMENT (enabled by default),
|
|
||||||
<br>
|
|
||||||
PURE_FUNCTION (enabled by default), <br>
|
|
||||||
QUANDARY_TAINT_ERROR (enabled by default), <br>
|
|
||||||
REGISTERED_OBSERVER_BEING_DEALLOCATED (enabled by default),
|
|
||||||
<br>
|
|
||||||
RESOURCE_LEAK (enabled by default), <br>
|
|
||||||
RETAIN_CYCLE (enabled by default), <br>
|
|
||||||
RETURN_EXPRESSION_REQUIRED (enabled by default), <br>
|
|
||||||
RETURN_STATEMENT_MISSING (enabled by default), <br>
|
|
||||||
RETURN_VALUE_IGNORED (disabled by default), <br>
|
|
||||||
SHELL_INJECTION (enabled by default), <br>
|
|
||||||
SHELL_INJECTION_RISK (enabled by default), <br>
|
|
||||||
SKIP_FUNCTION (enabled by default), <br>
|
|
||||||
SKIP_POINTER_DEREFERENCE (enabled by default), <br>
|
|
||||||
SQL_INJECTION (enabled by default), <br>
|
|
||||||
SQL_INJECTION_RISK (enabled by default), <br>
|
|
||||||
STACK_VARIABLE_ADDRESS_ESCAPE (disabled by default), <br>
|
|
||||||
STARVATION (enabled by default), <br>
|
|
||||||
STATIC_INITIALIZATION_ORDER_FIASCO (enabled by default),
|
|
||||||
<br>
|
|
||||||
STRICT_MODE_VIOLATION (enabled by default), <br>
|
|
||||||
Symexec_memory_error (enabled by default), <br>
|
|
||||||
TAINTED_BUFFER_ACCESS (enabled by default), <br>
|
|
||||||
TAINTED_MEMORY_ALLOCATION (enabled by default), <br>
|
|
||||||
THREAD_SAFETY_VIOLATION (enabled by default), <br>
|
|
||||||
TOPL_ERROR (enabled by default), <br>
|
|
||||||
UNARY_MINUS_APPLIED_TO_UNSIGNED_EXPRESSION (disabled by <br>
|
|
||||||
default), <br>
|
|
||||||
UNINITIALIZED_VALUE (enabled by default), <br>
|
|
||||||
UNREACHABLE_CODE (enabled by default), <br>
|
|
||||||
UNSAFE_GUARDED_BY_ACCESS (enabled by default), <br>
|
|
||||||
UNTRUSTED_BUFFER_ACCESS (disabled by default), <br>
|
|
||||||
UNTRUSTED_DESERIALIZATION (enabled by default), <br>
|
|
||||||
UNTRUSTED_DESERIALIZATION_RISK (enabled by default), <br>
|
|
||||||
UNTRUSTED_ENVIRONMENT_CHANGE_RISK (enabled by default), <br>
|
|
||||||
UNTRUSTED_FILE (enabled by default), <br>
|
|
||||||
UNTRUSTED_FILE_RISK (enabled by default), <br>
|
|
||||||
UNTRUSTED_HEAP_ALLOCATION (disabled by default), <br>
|
|
||||||
UNTRUSTED_INTENT_CREATION (enabled by default), <br>
|
|
||||||
UNTRUSTED_URL_RISK (enabled by default), <br>
|
|
||||||
UNTRUSTED_VARIABLE_LENGTH_ARRAY (enabled by default), <br>
|
|
||||||
USER_CONTROLLED_SQL_RISK (enabled by default), <br>
|
|
||||||
USE_AFTER_DELETE (enabled by default), <br>
|
|
||||||
USE_AFTER_FREE (enabled by default), <br>
|
|
||||||
USE_AFTER_LIFETIME (enabled by default), <br>
|
|
||||||
Unknown_proc (enabled by default), <br>
|
|
||||||
VECTOR_INVALIDATION (enabled by default), <br>
|
|
||||||
Wrong_argument_number (enabled by default), <br>
|
|
||||||
ZERO_ALLOCATION (disabled by default), <br>
|
|
||||||
ZERO_EXECUTION_TIME (disabled by default). <b><br>
|
|
||||||
--enable-issue-type</b> <i>+issue_type</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show reports coming from this
|
|
||||||
type of issue. By default, all issue types are enabled
|
|
||||||
except the ones listed in <b>--disable-issue-type</b>. Note
|
|
||||||
that enabling issue types does not make the corresponding
|
|
||||||
checker run; see individual checker options to turn them on
|
|
||||||
or off.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-filtering</b>,<b>-F</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Do not show the
|
|
||||||
experimental and blacklisted issue types (Conversely:
|
|
||||||
<b>--filtering</b> | <b>-f</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--from-json-report</b>
|
|
||||||
<i>report.json</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Load analysis results from a
|
|
||||||
report file (default is to load the results from the specs
|
|
||||||
files generated by the analysis).</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--issues-fields</b>
|
|
||||||
<i>,-separated sequence of { bug_type | bucket | qualifier
|
|
||||||
<br>
|
|
||||||
| severity | line | column | procedure |
|
|
||||||
procedure_start_line | file | <br>
|
|
||||||
bug_trace | key | hash | line_offset | <br>
|
|
||||||
qualifier_contains_potential_exception_note }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Fields to emit with
|
|
||||||
<b>--issues-tests</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--issues-tests</b>
|
|
||||||
<i>file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write a list of issues in a
|
|
||||||
format suitable for tests to <i>file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--issues-txt</b>
|
|
||||||
<i>file</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write a list of issues in text
|
|
||||||
format to <i>file</i> (default: infer-out/bugs.txt)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--print-logs</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Also log messages to
|
|
||||||
stdout and stderr (Conversely: <b>--no-print-logs</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--project-root</b>,<b>-C</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the root directory of
|
|
||||||
the project</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--quiet</b>,<b>-q</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Do not print specs
|
|
||||||
on standard output (default: only print for the
|
|
||||||
<b>report</b> command) (Conversely: <b>--no-quiet</b> |
|
|
||||||
<b>-Q</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-blacklist-files-containing</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">blacklist files containing the
|
|
||||||
specified string for the given analyzer (see
|
|
||||||
<b>--analyzer</b> for valid values)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-blacklist-path-regex</b>
|
|
||||||
<i>+path_regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">blacklist the analysis of files
|
|
||||||
whose relative path matches the specified OCaml-style regex
|
|
||||||
(to whitelist:
|
|
||||||
<b>--<analyzer>-whitelist-path-regex</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-formatter</b> <i>{
|
|
||||||
none | phabricator }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Which formatter to use when
|
|
||||||
emitting the report</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-suppress-errors</b>
|
|
||||||
<i>+error_name</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">do not report a type of
|
|
||||||
errors</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--results-dir</b>,<b>-o</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write results and internal
|
|
||||||
files in the specified directory</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--skip-analysis-in-path-skips-compilation</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Whether paths in
|
|
||||||
--skip-analysis-in-path should be compiled or not
|
|
||||||
(Conversely:
|
|
||||||
<b>--no-skip-analysis-in-path-skips-compilation</b>)</p>
|
|
||||||
|
|
||||||
<h2>HOISTING OPTIONS
|
|
||||||
<a name="HOISTING OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--no-hoisting-report-only-expensive</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: [Hoisting] Report
|
|
||||||
loop-invariant calls only when the function is expensive,
|
|
||||||
i.e. at least linear (Conversely:
|
|
||||||
<b>--hoisting-report-only-expensive</b>)</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-reportdiff</b>(1),
|
|
||||||
<b>infer-run</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,205 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:49 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-reportdiff</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-reportdiff</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-reportdiff
|
|
||||||
- compute the differences between two infer reports</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
reportdiff --report-current</b> <i>file</i>
|
|
||||||
<b>--report-previous</b> <i>file [options]</i></p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Given two infer
|
|
||||||
reports <i>previous</i> and <i>current</i>, compute the
|
|
||||||
following three reports and store them inside the
|
|
||||||
"differential/" subdirectory of the results
|
|
||||||
directory: <br>
|
|
||||||
- <b>introduced.json</b> contains the issues found in
|
|
||||||
<i>current</i> but not <i>previous</i>; <br>
|
|
||||||
- <b>fixed.json</b> contains the issues found in
|
|
||||||
<i>previous</i> but not <i>current</i>; <br>
|
|
||||||
- <b>preexisting.json</b> contains the issues found in both
|
|
||||||
<i>previous</i> and <i>current</i>.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">All three files
|
|
||||||
follow the same format as normal infer reports.</p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--costs-current</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Costs report of the latest
|
|
||||||
revision</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--costs-previous</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Costs report of the base
|
|
||||||
revision to use for comparison</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug</b>,<b>-g</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode (also
|
|
||||||
sets <b>--debug-level 2</b>, <b>--developer-mode</b>,
|
|
||||||
<b>--no-filtering</b>, <b>--print-buckets</b>,
|
|
||||||
<b>--print-types</b>, <b>--reports-include-ml-loc</b>,
|
|
||||||
<b>--no-only-cheap-debug</b>, <b>--trace-error</b>,
|
|
||||||
<b>--write-dotty</b>, <b>--write-html</b>) (Conversely:
|
|
||||||
<b>--no-debug</b> | <b>-G</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level</b>
|
|
||||||
<i>level</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level (sets
|
|
||||||
<b>--bo-debug</b> <i>level</i>,
|
|
||||||
<b>--debug-level-analysis</b> <i>level</i>,
|
|
||||||
<b>--debug-level-capture</b> <i>level</i>,
|
|
||||||
<b>--debug-level-linters</b> <i>level</i>):</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- 0: only basic debugging
|
|
||||||
enabled <br>
|
|
||||||
- 1: verbose debugging enabled <br>
|
|
||||||
- 2: very verbose debugging enabled <b><br>
|
|
||||||
--debug-level-analysis</b> <i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the analysis.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-capture</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the capture.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--file-renamings</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">JSON with a list of file
|
|
||||||
renamings to use while computing differential reports</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-current</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">report of the latest
|
|
||||||
revision</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-previous</b>
|
|
||||||
<i>path</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Report of the base revision to
|
|
||||||
use for comparison</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-skip-duplicated-types</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Skip
|
|
||||||
fixed-then-introduced duplicated types while computing
|
|
||||||
differential reports (Conversely:
|
|
||||||
<b>--skip-duplicated-types</b>)</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-report</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,394 +0,0 @@
|
|||||||
<!-- Creator : groff version 1.22.4 -->
|
|
||||||
<!-- CreationDate: Tue May 12 16:45:49 2020 -->
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
|
||||||
<meta name="Content-Style" content="text/css">
|
|
||||||
<style type="text/css">
|
|
||||||
p { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
pre { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
table { margin-top: 0; margin-bottom: 0; vertical-align: top }
|
|
||||||
h1 { text-align: center }
|
|
||||||
</style>
|
|
||||||
<title>infer-run</title>
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1 align="center">infer-run</h1>
|
|
||||||
|
|
||||||
<a href="#NAME">NAME</a><br>
|
|
||||||
<a href="#SYNOPSIS">SYNOPSIS</a><br>
|
|
||||||
<a href="#DESCRIPTION">DESCRIPTION</a><br>
|
|
||||||
<a href="#OPTIONS">OPTIONS</a><br>
|
|
||||||
<a href="#BUCK COMPILATION DATABASE OPTIONS">BUCK COMPILATION DATABASE OPTIONS</a><br>
|
|
||||||
<a href="#BUCK FLAVORS OPTIONS">BUCK FLAVORS OPTIONS</a><br>
|
|
||||||
<a href="#CLANG OPTIONS">CLANG OPTIONS</a><br>
|
|
||||||
<a href="#ENVIRONMENT">ENVIRONMENT</a><br>
|
|
||||||
<a href="#FILES">FILES</a><br>
|
|
||||||
<a href="#SEE ALSO">SEE ALSO</a><br>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
|
|
||||||
<h2>NAME
|
|
||||||
<a name="NAME"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">infer-run -
|
|
||||||
capture source files, analyze, and report</p>
|
|
||||||
|
|
||||||
<h2>SYNOPSIS
|
|
||||||
<a name="SYNOPSIS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
run</b> <i>[options]</i> <b><br>
|
|
||||||
infer</b> <i>[options]</i> <b>--</b> <i>compile
|
|
||||||
command</i></p>
|
|
||||||
|
|
||||||
<h2>DESCRIPTION
|
|
||||||
<a name="DESCRIPTION"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em">Calling
|
|
||||||
"<b>infer run</b> <i>[options]</i>" is equivalent
|
|
||||||
to performing the following sequence of commands:</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer
|
|
||||||
capture</b> <i>[options]</i> <b><br>
|
|
||||||
infer analyze</b> <i>[options]</i></p>
|
|
||||||
|
|
||||||
<h2>OPTIONS
|
|
||||||
<a name="OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><i><b>--censor-report</b>
|
|
||||||
+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify a filter for issues to
|
|
||||||
be censored by adding a 'censored_reason' field in the json
|
|
||||||
report. Infer will not report censored issues on the console
|
|
||||||
output and in bugs.txt, but tools that post-process the json
|
|
||||||
report can take them into account. If multiple filters are
|
|
||||||
specified, they are applied in the order in which they are
|
|
||||||
specified. Each filter is applied to each issue detected,
|
|
||||||
and only issues which are accepted by all filters are
|
|
||||||
reported. Each filter is of the form:
|
|
||||||
’<issue_type_regex>:<filename_regex>:<reason_string>’.
|
|
||||||
The first two components are OCaml Str regular expressions,
|
|
||||||
with an optional ’!’ character prefix. If a
|
|
||||||
regex has a ’!’ prefix, the polarity is
|
|
||||||
inverted, and the filter becomes a "blacklist"
|
|
||||||
instead of a "whitelist". Each filter is
|
|
||||||
interpreted as an implication: an issue matches if it does
|
|
||||||
not match the ’issue_type_regex’ or if it does
|
|
||||||
match the ’filename_regex’. The filenames that
|
|
||||||
are tested by the regex are relative to the
|
|
||||||
’--project-root’ directory. The
|
|
||||||
’<reason_string>’ is a non-empty string
|
|
||||||
used to explain why the issue was filtered.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug</b>,<b>-g</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Debug mode (also
|
|
||||||
sets <b>--debug-level 2</b>, <b>--developer-mode</b>,
|
|
||||||
<b>--no-filtering</b>, <b>--print-buckets</b>,
|
|
||||||
<b>--print-types</b>, <b>--reports-include-ml-loc</b>,
|
|
||||||
<b>--no-only-cheap-debug</b>, <b>--trace-error</b>,
|
|
||||||
<b>--write-dotty</b>, <b>--write-html</b>) (Conversely:
|
|
||||||
<b>--no-debug</b> | <b>-G</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level</b>
|
|
||||||
<i>level</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level (sets
|
|
||||||
<b>--bo-debug</b> <i>level</i>,
|
|
||||||
<b>--debug-level-analysis</b> <i>level</i>,
|
|
||||||
<b>--debug-level-capture</b> <i>level</i>,
|
|
||||||
<b>--debug-level-linters</b> <i>level</i>):</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;">- 0: only basic debugging
|
|
||||||
enabled <br>
|
|
||||||
- 1: verbose debugging enabled <br>
|
|
||||||
- 2: very verbose debugging enabled <b><br>
|
|
||||||
--debug-level-analysis</b> <i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the analysis.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-capture</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the capture.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--debug-level-linters</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Debug level for the linters.
|
|
||||||
See <b>--debug-level</b> for accepted values.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--fail-on-issue</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Exit with error code
|
|
||||||
2 if Infer found something to report (Conversely:
|
|
||||||
<b>--no-fail-on-issue</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--force-delete-results-dir</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Do not refuse to
|
|
||||||
delete the results directory if it doesn't look like an
|
|
||||||
infer results directory. (Conversely:
|
|
||||||
<b>--no-force-delete-results-dir</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--force-integration</b>
|
|
||||||
<i>command</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Proceed as if the first
|
|
||||||
argument after <b>--</b> was <i>command</i>. Possible
|
|
||||||
values: <i>ant</i>, <i>buck</i>, <i>gradle</i>,
|
|
||||||
<i>gradlew</i>, <i>java</i>, <i>javac</i>, <i>cc</i>,
|
|
||||||
<i>clang</i>, <i>gcc</i>, <i>clang++</i>, <i>c++</i>,
|
|
||||||
<i>g++</i>, <i>make</i>, <i>configure</i>, <i>cmake</i>,
|
|
||||||
<i>waf</i>, <i>mvn</i>, <i>mvnw</i>, <i>ndk-build</i>,
|
|
||||||
<i>xcodebuild</i>.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-format</b> <i>{ auto
|
|
||||||
| groff | pager | plain }</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this help in the specified
|
|
||||||
format. <b>auto</b> sets the format to <b>plain</b> if the
|
|
||||||
environment variable <b>TERM</b> is "dumb" or
|
|
||||||
undefined, and to <b>pager</b> otherwise.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--help-full</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Show this manual with all
|
|
||||||
internal options in the INTERNAL OPTIONS section</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--log-events</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Turn on the feature
|
|
||||||
that logs events in a machine-readable format (Conversely:
|
|
||||||
<b>--no-log-events</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--log-skipped</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Turn on the feature
|
|
||||||
that logs skipped functions (one per file) in a
|
|
||||||
machine-readable format (Conversely:
|
|
||||||
<b>--no-log-skipped</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--pmd-xml</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Output issues in
|
|
||||||
(PMD) XML format (Conversely: <b>--no-pmd-xml</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--print-log-identifier</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Print the unique
|
|
||||||
identifier that is common to all logged events (Conversely:
|
|
||||||
<b>--no-print-log-identifier</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--print-logs</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Also log messages to
|
|
||||||
stdout and stderr (Conversely: <b>--no-print-logs</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-progress-bar</b>,<b>-P</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Show a progress
|
|
||||||
bar (Conversely: <b>--progress-bar</b> | <b>-p</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--project-root</b>,<b>-C</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify the root directory of
|
|
||||||
the project</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--no-report</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Deactivates: Run the reporting
|
|
||||||
phase once the analysis has completed (Conversely:
|
|
||||||
<b>--report</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-blacklist-files-containing</b>
|
|
||||||
<i>+string</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">blacklist files containing the
|
|
||||||
specified string for the given analyzer (see
|
|
||||||
<b>--analyzer</b> for valid values)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-blacklist-path-regex</b>
|
|
||||||
<i>+path_regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">blacklist the analysis of files
|
|
||||||
whose relative path matches the specified OCaml-style regex
|
|
||||||
(to whitelist:
|
|
||||||
<b>--<analyzer>-whitelist-path-regex</b>)</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-force-relative-path</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Force converting an
|
|
||||||
absolute path to a relative path to the root directory
|
|
||||||
(Conversely: <b>--no-report-force-relative-path</b>)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-hook</b>
|
|
||||||
<i>script</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Specify a script to be executed
|
|
||||||
after the analysis results are written. This script will be
|
|
||||||
passed, <b>--issues-json</b>, <b>--issues-txt</b>,
|
|
||||||
<b>--issues-xml</b>, <b>--project-root</b>, and
|
|
||||||
<b>--results-dir</b>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--report-suppress-errors</b>
|
|
||||||
<i>+error_name</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">do not report a type of
|
|
||||||
errors</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--results-dir</b>,<b>-o</b>
|
|
||||||
<i>dir</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Write results and internal
|
|
||||||
files in the specified directory</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--skip-analysis-in-path</b>
|
|
||||||
<i>+path_prefix_OCaml_regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Ignore files whose path matches
|
|
||||||
the given prefix (can be specified multiple times)</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--sqlite-lock-timeout</b>
|
|
||||||
<i>int</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Timeout for SQLite results
|
|
||||||
database operations, in milliseconds.</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--version</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Print version information and
|
|
||||||
exit</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--version-json</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Print version information in
|
|
||||||
json format and exit</p>
|
|
||||||
|
|
||||||
<table width="100%" border="0" rules="none" frame="void"
|
|
||||||
cellspacing="0" cellpadding="0">
|
|
||||||
<tr valign="top" align="left">
|
|
||||||
<td width="11%"></td>
|
|
||||||
<td width="3%">
|
|
||||||
|
|
||||||
|
|
||||||
<p><b>--</b></p></td>
|
|
||||||
<td width="3%"></td>
|
|
||||||
<td width="83%">
|
|
||||||
|
|
||||||
|
|
||||||
<p>Stop argument processing, use remaining arguments as a
|
|
||||||
build command</p></td></tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<h2>BUCK COMPILATION DATABASE OPTIONS
|
|
||||||
<a name="BUCK COMPILATION DATABASE OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--buck-targets-blacklist</b>
|
|
||||||
<i>+regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Skip capture of buck targets
|
|
||||||
matched by the specified regular expression.</p>
|
|
||||||
|
|
||||||
<h2>BUCK FLAVORS OPTIONS
|
|
||||||
<a name="BUCK FLAVORS OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--buck-blacklist</b>
|
|
||||||
<i>+regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Skip capture of files matched
|
|
||||||
by the specified regular expression (only the "flavors
|
|
||||||
(C++)" Buck integration is supported, not Java).</p>
|
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>--capture-blacklist</b>
|
|
||||||
<i>regex</i></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Skip capture of files matched
|
|
||||||
by the specified OCaml regular expression (only supported by
|
|
||||||
the javac integration for now).</p>
|
|
||||||
|
|
||||||
<h2>CLANG OPTIONS
|
|
||||||
<a name="CLANG OPTIONS"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>--compute-analytics</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">Activates: Emit analytics as
|
|
||||||
info-level issues, like component kit line count and
|
|
||||||
component kit file cyclomatic complexity (Conversely:
|
|
||||||
<b>--no-compute-analytics</b>)</p>
|
|
||||||
|
|
||||||
<h2>ENVIRONMENT
|
|
||||||
<a name="ENVIRONMENT"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>INFER_ARGS</b>,
|
|
||||||
<b>INFERCONFIG</b>, <b>INFER_STRICT_MODE</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the ENVIRONMENT section in
|
|
||||||
the manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>FILES
|
|
||||||
<a name="FILES"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>.inferconfig</b></p>
|
|
||||||
|
|
||||||
<p style="margin-left:17%;">See the FILES section in the
|
|
||||||
manual of <b>infer</b>(1).</p>
|
|
||||||
|
|
||||||
<h2>SEE ALSO
|
|
||||||
<a name="SEE ALSO"></a>
|
|
||||||
</h2>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<p style="margin-left:11%; margin-top: 1em"><b>infer-analyze</b>(1),
|
|
||||||
<b>infer-capture</b>(1), <b>infer-report</b>(1)</p>
|
|
||||||
<hr>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue