Skip to content

Commit

Permalink
Update manual with subsection for WPI results (#6209)
Browse files Browse the repository at this point in the history
  • Loading branch information
jyoo980 authored Sep 29, 2023
1 parent e30dfd5 commit 7767b6b
Showing 1 changed file with 33 additions and 4 deletions.
37 changes: 33 additions & 4 deletions docs/manual/inference.tex
Original file line number Diff line number Diff line change
Expand Up @@ -139,10 +139,9 @@
\end{Verbatim}

The result is a set of log files placed in the \<dljc-out/> folder of the
target project. The results of type-checking with each candidate set of
annotations will be concatenated into the file \<dljc-out/wpi-stdout.log>; the final
results (i.e., those obtained using the most precise, consistent set of annotations)
will appear at the end of this file.
target project.
See Section~\ref{wpi-results} for an explanation of the log files generated by
an invocation of \<wpi.sh>.
The inferred annotations appear in \<.ajava> files in a
temporary directory whose name appears in the \<dlcj-out/wpi-stdout.log> file;
you can find their location by examining the \<-Aajava> argument
Expand Down Expand Up @@ -229,6 +228,36 @@

You may need to wait a few minutes for the command to complete.

\subsectionAndLabel{Whole-program inference results}{wpi-results}

The result of invoking \<wpi.sh> are log files stored in the \<dljc-out/> folder
of the target project.
The \<dljc-out/> folder contains:

\begin{itemize}
\item \<typecheck.out>: The final error messages produced by \<javac>,
comprising the results of type-checking obtained with the
latest iteration of WPI (i.e., using the most precise, consistent set of
annotations).
\item \<build\_output.txt>: Logs collected from compiling the target project
without the Checker Framework, using the build file found at the
top-level directory.
\item \<wpi-stdout.log>: The results of type-checking with each candidate set of
annotations, concatenated together in the order in which the annotations
were inferred.
The final results (i.e., those obtained using the most precise, consistent
set of annotations) will appear at the end of this file.
\item \<wpi-stdout-*>: These files are separate from the logs in \<wpi-stdout.log>.
They may be useful in the case where \<dljc> is not working as expected.
\item \<toplevel.log>: The log of the command executed at the top-level of the
target directory to invoke whole-program inference.
\item \<javac.json>: The list of all \<.java> files for which inference was
attempted by \<wpi.sh>, and the options passed to \<javac>.
\item \<stats.json>: Statistics from the invocation of \<wpi.sh> on the target
project, including build time, the number of built \<.jar> files, the number of
executable \<.jar> files, the number of \<javac> invocations, and the number of
source files.
\end{itemize}

\subsectionAndLabel{Requirements for whole-program inference scripts}{wpi-shared-requirements}

Expand Down

0 comments on commit 7767b6b

Please sign in to comment.