Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
meta
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
pub
meta
Commits
35c7bc87
Commit
35c7bc87
authored
2 years ago
by
Allan Blanchard
Browse files
Options
Downloads
Plain Diff
Merge remote-tracking branch 'origin/master' into feature/dune/devel_tools
parents
68774896
41189bee
No related branches found
No related tags found
No related merge requests found
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
CHANGELOG.md
+5
-1
5 additions, 1 deletion
CHANGELOG.md
README.md
+12
-3
12 additions, 3 deletions
README.md
frama-c-metacsl.opam
+1
-1
1 addition, 1 deletion
frama-c-metacsl.opam
frama-c-metacsl.opam.template
+1
-1
1 addition, 1 deletion
frama-c-metacsl.opam.template
with
19 additions
and
6 deletions
CHANGELOG.md
+
5
−
1
View file @
35c7bc87
# Current development
# Version 0.3
-
compatibility with Frama-C 25.0 Manganese
# Version 0.2
-
add warning category
`unknown-func`
which aborts by default
-
add
`\func`
meta-variables in all contexts
...
...
This diff is collapsed.
Click to expand it.
README.md
+
12
−
3
View file @
35c7bc87
...
...
@@ -7,8 +7,17 @@ constraints easily. For more information, see [[2]](#paper).
## Installation
If your Frama-C is installed via
`opam`
, you just have to run
`opam install .`
Otherwise, run the usual
`autoconf && ./configure && make && make install`
You can install a stable version of MetAcsl through
[
`opam`
](
https://opam.ocaml.org
)
(
package
`frama-c-metacsl`
).
If you want to compile it manually from the git repository, you need to have Frama-C installed,
and to ensure that the MetAcsl branch you intend to work on is compatible with it
(NB: the
`master`
branches from both repositories are supposed to stay synchronized).
Optional dependencies, needed for using the
[
deduction
](
#deduction
)
capabilities of MetAcsl include:
-
[
Why3
](
https://why3.lri.fr
)
(
only
for checking the consistency of MetAcsl's deduction model)
-
[
SWI Prolog
](
https://www.swi-prolog.org/
)
Then, run the usual
`autoconf && ./configure && make && make install`
## Usage
...
...
@@ -333,7 +342,7 @@ particular may pose problem. If a limit on the size of the set can be
determined, on can use
`-meta-static-bindings L`
to use static arrays of size L
instead.
### Deduction (experimental)
### Deduction (experimental)
<a name="deduction"></a>
In some specific cases, MetAcsl is able to deduce a meta-property from others.
Such a deduction must be manually requested by the
`proof:deduce`
flag. For the
...
...
This diff is collapsed.
Click to expand it.
frama-c-metacsl.opam
+
1
−
1
View file @
35c7bc87
...
...
@@ -36,7 +36,7 @@ build: [
]
name: "frama-c-metacsl"
synopsis: "MetACSL plugin of Frama-C for writing pervasives properties"
version: "0.
2
"
version: "0.
3+dev
"
description:"""
MetACSL let users write properties that need to be checked at particular
contexts (e.g. each time a location is written to inside a given set
...
...
This diff is collapsed.
Click to expand it.
frama-c-metacsl.opam.template
+
1
−
1
View file @
35c7bc87
name: "frama-c-metacsl"
synopsis: "MetACSL plugin of Frama-C for writing pervasives properties"
version: "0.
2
"
version: "0.
3+dev
"
description:"""
MetACSL let users write properties that need to be checked at particular
contexts (e.g. each time a location is written to inside a given set
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment