Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Why3
why3
Commits
263043a0
Commit
263043a0
authored
Mar 27, 2013
by
Andrei Paskevich
Browse files
fastwp: handle incomplete exceptional postcondition in "abstract"
Submitted by Johannes Kanig
parent
88d57a55
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/whyml/mlw_wp.ml
View file @
263043a0
...
@@ -1522,6 +1522,17 @@ and fast_wp_desc (env : wp_env) (s : Subst.t) (r : res_type) (e : expr)
...
@@ -1522,6 +1522,17 @@ and fast_wp_desc (env : wp_env) (s : Subst.t) (r : res_type) (e : expr)
let
xpost
=
Mexn
.
map
(
fun
p
->
let
xpost
=
Mexn
.
map
(
fun
p
->
{
s
=
wp1
.
post
.
s
;
{
s
=
wp1
.
post
.
s
;
ne
=
p
})
spec
.
c_xpost
in
ne
=
p
})
spec
.
c_xpost
in
(* We allow the xpost of the "abstract" to be incomplete; we fill in the
holes here *)
let
xpost
=
Mexn
.
fold
(
fun
ex
{
ne
=
post
;
s
=
s
}
acc
->
if
Mexn
.
mem
ex
acc
then
acc
else
let
post
=
{
ne
=
create_post
(
Mexn
.
find
ex
xresult
)
post
;
s
=
s
}
in
Mexn
.
add
ex
post
acc
)
wp1
.
exn
xpost
in
let
abstr_post
=
{
s
=
wp1
.
post
.
s
;
ne
=
spec
.
c_post
}
in
let
abstr_post
=
{
s
=
wp1
.
post
.
s
;
ne
=
spec
.
c_post
}
in
let
post
,
xpost
=
let
post
,
xpost
=
adapt_post_to_state_pair
env
s
r
abstr_post
xpost
in
adapt_post_to_state_pair
env
s
r
abstr_post
xpost
in
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment