Skip to content
Snippets Groups Projects
Commit 95ec3228 authored by Patrick Baudin's avatar Patrick Baudin Committed by Julien Signoles
Browse files

[rte] trivial annotations includes validation from syntaxical rules

parent 4116d3bc
No related branches found
No related tags found
No related merge requests found
...@@ -875,8 +875,7 @@ left-values access \\ ...@@ -875,8 +875,7 @@ left-values access \\
\lstinline |-rte-float-to-int| & boolean (true) & Generate annotations for \lstinline |-rte-float-to-int| & boolean (true) & Generate annotations for
casts from floating-point to integer \\ casts from floating-point to integer \\
\hline \hline
\lstinline |-rte-trivial-annotations| & boolean (true) & Generate status for \lstinline |-rte-trivial-annotations| & boolean (true) & Generate all annotations even when they trivially hold \\
annotation through constant folding \\
\hline \hline
\lstinline |-rte-warn| & boolean (true) & Emit warning on broken annotations \\ \lstinline |-rte-warn| & boolean (true) & Emit warning on broken annotations \\
\hline \hline
......
...@@ -90,14 +90,16 @@ module DoPointerCall = ...@@ -90,14 +90,16 @@ module DoPointerCall =
end) end)
(* uses results of basic constant propagation in order to check (* uses results of basic constant propagation in order to check
validity / invalidity of generated assertions, emitting a status if possible validity / invalidity of generated assertions, emitting a status if possible.
Notice that annotations that can be considered valid from syntaxical rules
are also considered as trivial.
*) *)
module Trivial = module Trivial =
False False
(struct (struct
let option_name = "-rte-trivial-annotations" let option_name = "-rte-trivial-annotations"
let help = "generate annotations for constant expressions, even when \ let help = "generate all annotations even when they trivially hold \
they trivially hold" (from evaluation of constant expressions, syntactical rules...)"
(* if on, evaluates constants in order to check if assertions (* if on, evaluates constants in order to check if assertions
are trivially true / false *) are trivially true / false *)
end) end)
......
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