Skip to content
Snippets Groups Projects
Commit fe56d1e0 authored by Virgile Prevosto's avatar Virgile Prevosto
Browse files

[devman] fixes version in Change section + doc `status` flag in ACSL extensions

parent 282c5387
No related branches found
No related tags found
No related merge requests found
...@@ -3926,7 +3926,7 @@ the corresponding list is traversed normally by the visitor ...@@ -3926,7 +3926,7 @@ the corresponding list is traversed normally by the visitor
(see section~\ref{adv:visitors}). (see section~\ref{adv:visitors}).
In order for the extension to be recognized by the parser, it must be In order for the extension to be recognized by the parser, it must be
registered by one of the following functions, depending on its category: registered by one of the following functions, depending on its category.
\begin{itemize} \begin{itemize}
\item \texttt{Logic\_typing.register\_behavior\_extension}% \item \texttt{Logic\_typing.register\_behavior\_extension}%
\scodeidx{Logic\_typing}{register\_behavior\_extension} \scodeidx{Logic\_typing}{register\_behavior\_extension}
...@@ -3941,6 +3941,15 @@ registered by one of the following functions, depending on its category: ...@@ -3941,6 +3941,15 @@ registered by one of the following functions, depending on its category:
\item \texttt{Logic\_typing.register\_code\_annot\_next\_both\_extension}% \item \texttt{Logic\_typing.register\_code\_annot\_next\_both\_extension}%
\scodeidx{Logic\_typing}{register\_code\_annot\_next\_loop\_extension} \scodeidx{Logic\_typing}{register\_code\_annot\_next\_loop\_extension}
\end{itemize} \end{itemize}
Each function takes three arguments:
\begin{itemize}
\item \texttt{kw} the name of the extension,
\item \texttt{status}, a boolean flag indicating whether the extended annotation
may have a validity status, and
\item \texttt{f} the type-checking function itself.
\end{itemize}
After a call to the appropriate registration function, After a call to the appropriate registration function,
a clause of the form \verb|kw e1,...,en;|, where each \verb|ei| can be a clause of the form \verb|kw e1,...,en;|, where each \verb|ei| can be
any syntactically valid ACSL term or predicate, any syntactically valid ACSL term or predicate,
......
...@@ -7,7 +7,12 @@ This chapter summarizes the major changes in this documentation between each ...@@ -7,7 +7,12 @@ This chapter summarizes the major changes in this documentation between each
\section*{Frama-C+dev} \section*{Frama-C+dev}
\begin{itemize} \begin{itemize}
\item \textbf{ACSL Extension}: Document new \texttt{status} flag for registration functions
\item \textbf{Testing}: Document of usage \texttt{@@} in a directive \item \textbf{Testing}: Document of usage \texttt{@@} in a directive
\end{itemize}
\section*{18.0 Argon}
\begin{itemize}
\item \textbf{Logging Services}: Document \texttt{error} and \texttt{failure} behaviors. \item \textbf{Logging Services}: Document \texttt{error} and \texttt{failure} behaviors.
\item \textbf{ACSL Extensions}: New extension categories, for global and plain code annotations \item \textbf{ACSL Extensions}: New extension categories, for global and plain code annotations
\end{itemize} \end{itemize}
......
...@@ -172,6 +172,7 @@ type typing_context = { ...@@ -172,6 +172,7 @@ type typing_context = {
@since Carbon-20101201 @since Carbon-20101201
@modify Silicon-20161101 change type of the function @modify Silicon-20161101 change type of the function
@Frama-C+dev add [status] argument
*) *)
val register_behavior_extension: val register_behavior_extension:
string -> bool -> string -> bool ->
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment